All Downloads are FREE. Search and download functionalities are using the official Maven repository.

clarifai2.internal.grpc.api.ConceptOuterClass Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: proto/clarifai/api/concept.proto

package clarifai2.internal.grpc.api;

public final class ConceptOuterClass {
  private ConceptOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface ConceptOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.Concept)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string id = 1;
     */
    java.lang.String getId();
    /**
     * string id = 1;
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * string name = 2;
     */
    java.lang.String getName();
    /**
     * string name = 2;
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * float value = 3 [(.clarifai.api.utils.cl_show_if_empty) = true, (.clarifai.api.utils.cl_default_float) = 1];
     */
    float getValue();

    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    boolean hasCreatedAt();
    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    com.google.protobuf.Timestamp getCreatedAt();
    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder();

    /**
     * string language = 5;
     */
    java.lang.String getLanguage();
    /**
     * string language = 5;
     */
    com.google.protobuf.ByteString
        getLanguageBytes();

    /**
     * string app_id = 6;
     */
    java.lang.String getAppId();
    /**
     * string app_id = 6;
     */
    com.google.protobuf.ByteString
        getAppIdBytes();

    /**
     * string definition = 7;
     */
    java.lang.String getDefinition();
    /**
     * string definition = 7;
     */
    com.google.protobuf.ByteString
        getDefinitionBytes();
  }
  /**
   * Protobuf type {@code clarifai.api.Concept}
   */
  public  static final class Concept extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.Concept)
      ConceptOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Concept.newBuilder() to construct.
    private Concept(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Concept() {
      id_ = "";
      name_ = "";
      value_ = 0F;
      language_ = "";
      appId_ = "";
      definition_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Concept(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              id_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 29: {

              value_ = input.readFloat();
              break;
            }
            case 34: {
              com.google.protobuf.Timestamp.Builder subBuilder = null;
              if (createdAt_ != null) {
                subBuilder = createdAt_.toBuilder();
              }
              createdAt_ = input.readMessage(com.google.protobuf.Timestamp.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(createdAt_);
                createdAt_ = subBuilder.buildPartial();
              }

              break;
            }
            case 42: {
              java.lang.String s = input.readStringRequireUtf8();

              language_ = s;
              break;
            }
            case 50: {
              java.lang.String s = input.readStringRequireUtf8();

              appId_ = s;
              break;
            }
            case 58: {
              java.lang.String s = input.readStringRequireUtf8();

              definition_ = s;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_Concept_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_Concept_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept.class, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder.class);
    }

    public static final int ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object id_;
    /**
     * string id = 1;
     */
    public java.lang.String getId() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        id_ = s;
        return s;
      }
    }
    /**
     * string id = 1;
     */
    public com.google.protobuf.ByteString
        getIdBytes() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        id_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * string name = 2;
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * string name = 2;
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int VALUE_FIELD_NUMBER = 3;
    private float value_;
    /**
     * float value = 3 [(.clarifai.api.utils.cl_show_if_empty) = true, (.clarifai.api.utils.cl_default_float) = 1];
     */
    public float getValue() {
      return value_;
    }

    public static final int CREATED_AT_FIELD_NUMBER = 4;
    private com.google.protobuf.Timestamp createdAt_;
    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    public boolean hasCreatedAt() {
      return createdAt_ != null;
    }
    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    public com.google.protobuf.Timestamp getCreatedAt() {
      return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_;
    }
    /**
     * .google.protobuf.Timestamp created_at = 4;
     */
    public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() {
      return getCreatedAt();
    }

    public static final int LANGUAGE_FIELD_NUMBER = 5;
    private volatile java.lang.Object language_;
    /**
     * string language = 5;
     */
    public java.lang.String getLanguage() {
      java.lang.Object ref = language_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        language_ = s;
        return s;
      }
    }
    /**
     * string language = 5;
     */
    public com.google.protobuf.ByteString
        getLanguageBytes() {
      java.lang.Object ref = language_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        language_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int APP_ID_FIELD_NUMBER = 6;
    private volatile java.lang.Object appId_;
    /**
     * string app_id = 6;
     */
    public java.lang.String getAppId() {
      java.lang.Object ref = appId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        appId_ = s;
        return s;
      }
    }
    /**
     * string app_id = 6;
     */
    public com.google.protobuf.ByteString
        getAppIdBytes() {
      java.lang.Object ref = appId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        appId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DEFINITION_FIELD_NUMBER = 7;
    private volatile java.lang.Object definition_;
    /**
     * string definition = 7;
     */
    public java.lang.String getDefinition() {
      java.lang.Object ref = definition_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        definition_ = s;
        return s;
      }
    }
    /**
     * string definition = 7;
     */
    public com.google.protobuf.ByteString
        getDefinitionBytes() {
      java.lang.Object ref = definition_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        definition_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (value_ != 0F) {
        output.writeFloat(3, value_);
      }
      if (createdAt_ != null) {
        output.writeMessage(4, getCreatedAt());
      }
      if (!getLanguageBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, language_);
      }
      if (!getAppIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, appId_);
      }
      if (!getDefinitionBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, definition_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (value_ != 0F) {
        size += com.google.protobuf.CodedOutputStream
          .computeFloatSize(3, value_);
      }
      if (createdAt_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, getCreatedAt());
      }
      if (!getLanguageBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, language_);
      }
      if (!getAppIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, appId_);
      }
      if (!getDefinitionBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, definition_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.Concept)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.Concept other = (clarifai2.internal.grpc.api.ConceptOuterClass.Concept) obj;

      boolean result = true;
      result = result && getId()
          .equals(other.getId());
      result = result && getName()
          .equals(other.getName());
      result = result && (
          java.lang.Float.floatToIntBits(getValue())
          == java.lang.Float.floatToIntBits(
              other.getValue()));
      result = result && (hasCreatedAt() == other.hasCreatedAt());
      if (hasCreatedAt()) {
        result = result && getCreatedAt()
            .equals(other.getCreatedAt());
      }
      result = result && getLanguage()
          .equals(other.getLanguage());
      result = result && getAppId()
          .equals(other.getAppId());
      result = result && getDefinition()
          .equals(other.getDefinition());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + ID_FIELD_NUMBER;
      hash = (53 * hash) + getId().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + VALUE_FIELD_NUMBER;
      hash = (53 * hash) + java.lang.Float.floatToIntBits(
          getValue());
      if (hasCreatedAt()) {
        hash = (37 * hash) + CREATED_AT_FIELD_NUMBER;
        hash = (53 * hash) + getCreatedAt().hashCode();
      }
      hash = (37 * hash) + LANGUAGE_FIELD_NUMBER;
      hash = (53 * hash) + getLanguage().hashCode();
      hash = (37 * hash) + APP_ID_FIELD_NUMBER;
      hash = (53 * hash) + getAppId().hashCode();
      hash = (37 * hash) + DEFINITION_FIELD_NUMBER;
      hash = (53 * hash) + getDefinition().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.Concept prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.Concept}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.Concept)
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_Concept_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_Concept_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.Concept.class, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.Concept.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        id_ = "";

        name_ = "";

        value_ = 0F;

        if (createdAtBuilder_ == null) {
          createdAt_ = null;
        } else {
          createdAt_ = null;
          createdAtBuilder_ = null;
        }
        language_ = "";

        appId_ = "";

        definition_ = "";

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_Concept_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.Concept result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.Concept result = new clarifai2.internal.grpc.api.ConceptOuterClass.Concept(this);
        result.id_ = id_;
        result.name_ = name_;
        result.value_ = value_;
        if (createdAtBuilder_ == null) {
          result.createdAt_ = createdAt_;
        } else {
          result.createdAt_ = createdAtBuilder_.build();
        }
        result.language_ = language_;
        result.appId_ = appId_;
        result.definition_ = definition_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.Concept) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.Concept)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.Concept other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance()) return this;
        if (!other.getId().isEmpty()) {
          id_ = other.id_;
          onChanged();
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (other.getValue() != 0F) {
          setValue(other.getValue());
        }
        if (other.hasCreatedAt()) {
          mergeCreatedAt(other.getCreatedAt());
        }
        if (!other.getLanguage().isEmpty()) {
          language_ = other.language_;
          onChanged();
        }
        if (!other.getAppId().isEmpty()) {
          appId_ = other.appId_;
          onChanged();
        }
        if (!other.getDefinition().isEmpty()) {
          definition_ = other.definition_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.Concept parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.Concept) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object id_ = "";
      /**
       * string id = 1;
       */
      public java.lang.String getId() {
        java.lang.Object ref = id_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          id_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string id = 1;
       */
      public com.google.protobuf.ByteString
          getIdBytes() {
        java.lang.Object ref = id_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          id_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string id = 1;
       */
      public Builder setId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * string id = 1;
       */
      public Builder clearId() {
        
        id_ = getDefaultInstance().getId();
        onChanged();
        return this;
      }
      /**
       * string id = 1;
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        id_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object name_ = "";
      /**
       * string name = 2;
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string name = 2;
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string name = 2;
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * string name = 2;
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * string name = 2;
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private float value_ ;
      /**
       * float value = 3 [(.clarifai.api.utils.cl_show_if_empty) = true, (.clarifai.api.utils.cl_default_float) = 1];
       */
      public float getValue() {
        return value_;
      }
      /**
       * float value = 3 [(.clarifai.api.utils.cl_show_if_empty) = true, (.clarifai.api.utils.cl_default_float) = 1];
       */
      public Builder setValue(float value) {
        
        value_ = value;
        onChanged();
        return this;
      }
      /**
       * float value = 3 [(.clarifai.api.utils.cl_show_if_empty) = true, (.clarifai.api.utils.cl_default_float) = 1];
       */
      public Builder clearValue() {
        
        value_ = 0F;
        onChanged();
        return this;
      }

      private com.google.protobuf.Timestamp createdAt_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> createdAtBuilder_;
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public boolean hasCreatedAt() {
        return createdAtBuilder_ != null || createdAt_ != null;
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public com.google.protobuf.Timestamp getCreatedAt() {
        if (createdAtBuilder_ == null) {
          return createdAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_;
        } else {
          return createdAtBuilder_.getMessage();
        }
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public Builder setCreatedAt(com.google.protobuf.Timestamp value) {
        if (createdAtBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          createdAt_ = value;
          onChanged();
        } else {
          createdAtBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public Builder setCreatedAt(
          com.google.protobuf.Timestamp.Builder builderForValue) {
        if (createdAtBuilder_ == null) {
          createdAt_ = builderForValue.build();
          onChanged();
        } else {
          createdAtBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public Builder mergeCreatedAt(com.google.protobuf.Timestamp value) {
        if (createdAtBuilder_ == null) {
          if (createdAt_ != null) {
            createdAt_ =
              com.google.protobuf.Timestamp.newBuilder(createdAt_).mergeFrom(value).buildPartial();
          } else {
            createdAt_ = value;
          }
          onChanged();
        } else {
          createdAtBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public Builder clearCreatedAt() {
        if (createdAtBuilder_ == null) {
          createdAt_ = null;
          onChanged();
        } else {
          createdAt_ = null;
          createdAtBuilder_ = null;
        }

        return this;
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public com.google.protobuf.Timestamp.Builder getCreatedAtBuilder() {
        
        onChanged();
        return getCreatedAtFieldBuilder().getBuilder();
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      public com.google.protobuf.TimestampOrBuilder getCreatedAtOrBuilder() {
        if (createdAtBuilder_ != null) {
          return createdAtBuilder_.getMessageOrBuilder();
        } else {
          return createdAt_ == null ?
              com.google.protobuf.Timestamp.getDefaultInstance() : createdAt_;
        }
      }
      /**
       * .google.protobuf.Timestamp created_at = 4;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> 
          getCreatedAtFieldBuilder() {
        if (createdAtBuilder_ == null) {
          createdAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>(
                  getCreatedAt(),
                  getParentForChildren(),
                  isClean());
          createdAt_ = null;
        }
        return createdAtBuilder_;
      }

      private java.lang.Object language_ = "";
      /**
       * string language = 5;
       */
      public java.lang.String getLanguage() {
        java.lang.Object ref = language_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          language_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string language = 5;
       */
      public com.google.protobuf.ByteString
          getLanguageBytes() {
        java.lang.Object ref = language_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          language_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string language = 5;
       */
      public Builder setLanguage(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        language_ = value;
        onChanged();
        return this;
      }
      /**
       * string language = 5;
       */
      public Builder clearLanguage() {
        
        language_ = getDefaultInstance().getLanguage();
        onChanged();
        return this;
      }
      /**
       * string language = 5;
       */
      public Builder setLanguageBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        language_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object appId_ = "";
      /**
       * string app_id = 6;
       */
      public java.lang.String getAppId() {
        java.lang.Object ref = appId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          appId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string app_id = 6;
       */
      public com.google.protobuf.ByteString
          getAppIdBytes() {
        java.lang.Object ref = appId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          appId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string app_id = 6;
       */
      public Builder setAppId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        appId_ = value;
        onChanged();
        return this;
      }
      /**
       * string app_id = 6;
       */
      public Builder clearAppId() {
        
        appId_ = getDefaultInstance().getAppId();
        onChanged();
        return this;
      }
      /**
       * string app_id = 6;
       */
      public Builder setAppIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        appId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object definition_ = "";
      /**
       * string definition = 7;
       */
      public java.lang.String getDefinition() {
        java.lang.Object ref = definition_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          definition_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string definition = 7;
       */
      public com.google.protobuf.ByteString
          getDefinitionBytes() {
        java.lang.Object ref = definition_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          definition_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string definition = 7;
       */
      public Builder setDefinition(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        definition_ = value;
        onChanged();
        return this;
      }
      /**
       * string definition = 7;
       */
      public Builder clearDefinition() {
        
        definition_ = getDefaultInstance().getDefinition();
        onChanged();
        return this;
      }
      /**
       * string definition = 7;
       */
      public Builder setDefinitionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        definition_ = value;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.Concept)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.Concept)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.Concept DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.Concept();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.Concept getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public Concept parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Concept(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConceptCountOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.ConceptCount)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string id = 1;
     */
    java.lang.String getId();
    /**
     * string id = 1;
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * string name = 2;
     */
    java.lang.String getName();
    /**
     * string name = 2;
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    boolean hasConceptTypeCount();
    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getConceptTypeCount();
    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder getConceptTypeCountOrBuilder();
  }
  /**
   * Protobuf type {@code clarifai.api.ConceptCount}
   */
  public  static final class ConceptCount extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.ConceptCount)
      ConceptCountOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ConceptCount.newBuilder() to construct.
    private ConceptCount(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ConceptCount() {
      id_ = "";
      name_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ConceptCount(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              id_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder subBuilder = null;
              if (conceptTypeCount_ != null) {
                subBuilder = conceptTypeCount_.toBuilder();
              }
              conceptTypeCount_ = input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(conceptTypeCount_);
                conceptTypeCount_ = subBuilder.buildPartial();
              }

              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptCount_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptCount_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder.class);
    }

    public static final int ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object id_;
    /**
     * string id = 1;
     */
    public java.lang.String getId() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        id_ = s;
        return s;
      }
    }
    /**
     * string id = 1;
     */
    public com.google.protobuf.ByteString
        getIdBytes() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        id_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * string name = 2;
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * string name = 2;
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONCEPT_TYPE_COUNT_FIELD_NUMBER = 3;
    private clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount conceptTypeCount_;
    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    public boolean hasConceptTypeCount() {
      return conceptTypeCount_ != null;
    }
    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getConceptTypeCount() {
      return conceptTypeCount_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.getDefaultInstance() : conceptTypeCount_;
    }
    /**
     * .clarifai.api.ConceptTypeCount concept_type_count = 3;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder getConceptTypeCountOrBuilder() {
      return getConceptTypeCount();
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (conceptTypeCount_ != null) {
        output.writeMessage(3, getConceptTypeCount());
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (conceptTypeCount_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getConceptTypeCount());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount other = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount) obj;

      boolean result = true;
      result = result && getId()
          .equals(other.getId());
      result = result && getName()
          .equals(other.getName());
      result = result && (hasConceptTypeCount() == other.hasConceptTypeCount());
      if (hasConceptTypeCount()) {
        result = result && getConceptTypeCount()
            .equals(other.getConceptTypeCount());
      }
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + ID_FIELD_NUMBER;
      hash = (53 * hash) + getId().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (hasConceptTypeCount()) {
        hash = (37 * hash) + CONCEPT_TYPE_COUNT_FIELD_NUMBER;
        hash = (53 * hash) + getConceptTypeCount().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.ConceptCount}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.ConceptCount)
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptCount_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        id_ = "";

        name_ = "";

        if (conceptTypeCountBuilder_ == null) {
          conceptTypeCount_ = null;
        } else {
          conceptTypeCount_ = null;
          conceptTypeCountBuilder_ = null;
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptCount_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount result = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount(this);
        result.id_ = id_;
        result.name_ = name_;
        if (conceptTypeCountBuilder_ == null) {
          result.conceptTypeCount_ = conceptTypeCount_;
        } else {
          result.conceptTypeCount_ = conceptTypeCountBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.getDefaultInstance()) return this;
        if (!other.getId().isEmpty()) {
          id_ = other.id_;
          onChanged();
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (other.hasConceptTypeCount()) {
          mergeConceptTypeCount(other.getConceptTypeCount());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object id_ = "";
      /**
       * string id = 1;
       */
      public java.lang.String getId() {
        java.lang.Object ref = id_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          id_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string id = 1;
       */
      public com.google.protobuf.ByteString
          getIdBytes() {
        java.lang.Object ref = id_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          id_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string id = 1;
       */
      public Builder setId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * string id = 1;
       */
      public Builder clearId() {
        
        id_ = getDefaultInstance().getId();
        onChanged();
        return this;
      }
      /**
       * string id = 1;
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        id_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object name_ = "";
      /**
       * string name = 2;
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string name = 2;
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string name = 2;
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * string name = 2;
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * string name = 2;
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount conceptTypeCount_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder> conceptTypeCountBuilder_;
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public boolean hasConceptTypeCount() {
        return conceptTypeCountBuilder_ != null || conceptTypeCount_ != null;
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getConceptTypeCount() {
        if (conceptTypeCountBuilder_ == null) {
          return conceptTypeCount_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.getDefaultInstance() : conceptTypeCount_;
        } else {
          return conceptTypeCountBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public Builder setConceptTypeCount(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount value) {
        if (conceptTypeCountBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          conceptTypeCount_ = value;
          onChanged();
        } else {
          conceptTypeCountBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public Builder setConceptTypeCount(
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder builderForValue) {
        if (conceptTypeCountBuilder_ == null) {
          conceptTypeCount_ = builderForValue.build();
          onChanged();
        } else {
          conceptTypeCountBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public Builder mergeConceptTypeCount(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount value) {
        if (conceptTypeCountBuilder_ == null) {
          if (conceptTypeCount_ != null) {
            conceptTypeCount_ =
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.newBuilder(conceptTypeCount_).mergeFrom(value).buildPartial();
          } else {
            conceptTypeCount_ = value;
          }
          onChanged();
        } else {
          conceptTypeCountBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public Builder clearConceptTypeCount() {
        if (conceptTypeCountBuilder_ == null) {
          conceptTypeCount_ = null;
          onChanged();
        } else {
          conceptTypeCount_ = null;
          conceptTypeCountBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder getConceptTypeCountBuilder() {
        
        onChanged();
        return getConceptTypeCountFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder getConceptTypeCountOrBuilder() {
        if (conceptTypeCountBuilder_ != null) {
          return conceptTypeCountBuilder_.getMessageOrBuilder();
        } else {
          return conceptTypeCount_ == null ?
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.getDefaultInstance() : conceptTypeCount_;
        }
      }
      /**
       * .clarifai.api.ConceptTypeCount concept_type_count = 3;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder> 
          getConceptTypeCountFieldBuilder() {
        if (conceptTypeCountBuilder_ == null) {
          conceptTypeCountBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder>(
                  getConceptTypeCount(),
                  getParentForChildren(),
                  isClean());
          conceptTypeCount_ = null;
        }
        return conceptTypeCountBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.ConceptCount)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.ConceptCount)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public ConceptCount parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ConceptCount(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConceptTypeCountOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.ConceptTypeCount)
      com.google.protobuf.MessageOrBuilder {

    /**
     * uint32 positive = 1;
     */
    int getPositive();

    /**
     * uint32 negative = 2;
     */
    int getNegative();
  }
  /**
   * Protobuf type {@code clarifai.api.ConceptTypeCount}
   */
  public  static final class ConceptTypeCount extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.ConceptTypeCount)
      ConceptTypeCountOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ConceptTypeCount.newBuilder() to construct.
    private ConceptTypeCount(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ConceptTypeCount() {
      positive_ = 0;
      negative_ = 0;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ConceptTypeCount(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {

              positive_ = input.readUInt32();
              break;
            }
            case 16: {

              negative_ = input.readUInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptTypeCount_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptTypeCount_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder.class);
    }

    public static final int POSITIVE_FIELD_NUMBER = 1;
    private int positive_;
    /**
     * uint32 positive = 1;
     */
    public int getPositive() {
      return positive_;
    }

    public static final int NEGATIVE_FIELD_NUMBER = 2;
    private int negative_;
    /**
     * uint32 negative = 2;
     */
    public int getNegative() {
      return negative_;
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (positive_ != 0) {
        output.writeUInt32(1, positive_);
      }
      if (negative_ != 0) {
        output.writeUInt32(2, negative_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (positive_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(1, positive_);
      }
      if (negative_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(2, negative_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount other = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount) obj;

      boolean result = true;
      result = result && (getPositive()
          == other.getPositive());
      result = result && (getNegative()
          == other.getNegative());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + POSITIVE_FIELD_NUMBER;
      hash = (53 * hash) + getPositive();
      hash = (37 * hash) + NEGATIVE_FIELD_NUMBER;
      hash = (53 * hash) + getNegative();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.ConceptTypeCount}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.ConceptTypeCount)
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCountOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptTypeCount_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptTypeCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        positive_ = 0;

        negative_ = 0;

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptTypeCount_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount result = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount(this);
        result.positive_ = positive_;
        result.negative_ = negative_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount.getDefaultInstance()) return this;
        if (other.getPositive() != 0) {
          setPositive(other.getPositive());
        }
        if (other.getNegative() != 0) {
          setNegative(other.getNegative());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int positive_ ;
      /**
       * uint32 positive = 1;
       */
      public int getPositive() {
        return positive_;
      }
      /**
       * uint32 positive = 1;
       */
      public Builder setPositive(int value) {
        
        positive_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 positive = 1;
       */
      public Builder clearPositive() {
        
        positive_ = 0;
        onChanged();
        return this;
      }

      private int negative_ ;
      /**
       * uint32 negative = 2;
       */
      public int getNegative() {
        return negative_;
      }
      /**
       * uint32 negative = 2;
       */
      public Builder setNegative(int value) {
        
        negative_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 negative = 2;
       */
      public Builder clearNegative() {
        
        negative_ = 0;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.ConceptTypeCount)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.ConceptTypeCount)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public ConceptTypeCount parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ConceptTypeCount(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptTypeCount getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GetConceptRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.GetConceptRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * string concept_id = 2;
     */
    java.lang.String getConceptId();
    /**
     * string concept_id = 2;
     */
    com.google.protobuf.ByteString
        getConceptIdBytes();
  }
  /**
   * Protobuf type {@code clarifai.api.GetConceptRequest}
   */
  public  static final class GetConceptRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.GetConceptRequest)
      GetConceptRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetConceptRequest.newBuilder() to construct.
    private GetConceptRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private GetConceptRequest() {
      conceptId_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetConceptRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              conceptId_ = s;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.Builder.class);
    }

    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int CONCEPT_ID_FIELD_NUMBER = 2;
    private volatile java.lang.Object conceptId_;
    /**
     * string concept_id = 2;
     */
    public java.lang.String getConceptId() {
      java.lang.Object ref = conceptId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        conceptId_ = s;
        return s;
      }
    }
    /**
     * string concept_id = 2;
     */
    public com.google.protobuf.ByteString
        getConceptIdBytes() {
      java.lang.Object ref = conceptId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        conceptId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      if (!getConceptIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, conceptId_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      if (!getConceptIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, conceptId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && getConceptId()
          .equals(other.getConceptId());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      hash = (37 * hash) + CONCEPT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getConceptId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.GetConceptRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.GetConceptRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        conceptId_ = "";

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest(this);
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        result.conceptId_ = conceptId_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (!other.getConceptId().isEmpty()) {
          conceptId_ = other.conceptId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private java.lang.Object conceptId_ = "";
      /**
       * string concept_id = 2;
       */
      public java.lang.String getConceptId() {
        java.lang.Object ref = conceptId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          conceptId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string concept_id = 2;
       */
      public com.google.protobuf.ByteString
          getConceptIdBytes() {
        java.lang.Object ref = conceptId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          conceptId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string concept_id = 2;
       */
      public Builder setConceptId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        conceptId_ = value;
        onChanged();
        return this;
      }
      /**
       * string concept_id = 2;
       */
      public Builder clearConceptId() {
        
        conceptId_ = getDefaultInstance().getConceptId();
        onChanged();
        return this;
      }
      /**
       * string concept_id = 2;
       */
      public Builder setConceptIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        conceptId_ = value;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.GetConceptRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.GetConceptRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public GetConceptRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetConceptRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ListConceptsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.ListConceptsRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * uint32 page = 2;
     */
    int getPage();

    /**
     * uint32 per_page = 3;
     */
    int getPerPage();
  }
  /**
   * Protobuf type {@code clarifai.api.ListConceptsRequest}
   */
  public  static final class ListConceptsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.ListConceptsRequest)
      ListConceptsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ListConceptsRequest.newBuilder() to construct.
    private ListConceptsRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ListConceptsRequest() {
      page_ = 0;
      perPage_ = 0;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ListConceptsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 16: {

              page_ = input.readUInt32();
              break;
            }
            case 24: {

              perPage_ = input.readUInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ListConceptsRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ListConceptsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.Builder.class);
    }

    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int PAGE_FIELD_NUMBER = 2;
    private int page_;
    /**
     * uint32 page = 2;
     */
    public int getPage() {
      return page_;
    }

    public static final int PER_PAGE_FIELD_NUMBER = 3;
    private int perPage_;
    /**
     * uint32 per_page = 3;
     */
    public int getPerPage() {
      return perPage_;
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      if (page_ != 0) {
        output.writeUInt32(2, page_);
      }
      if (perPage_ != 0) {
        output.writeUInt32(3, perPage_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      if (page_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(2, page_);
      }
      if (perPage_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(3, perPage_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && (getPage()
          == other.getPage());
      result = result && (getPerPage()
          == other.getPerPage());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      hash = (37 * hash) + PAGE_FIELD_NUMBER;
      hash = (53 * hash) + getPage();
      hash = (37 * hash) + PER_PAGE_FIELD_NUMBER;
      hash = (53 * hash) + getPerPage();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.ListConceptsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.ListConceptsRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ListConceptsRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ListConceptsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        page_ = 0;

        perPage_ = 0;

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ListConceptsRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest(this);
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        result.page_ = page_;
        result.perPage_ = perPage_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (other.getPage() != 0) {
          setPage(other.getPage());
        }
        if (other.getPerPage() != 0) {
          setPerPage(other.getPerPage());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private int page_ ;
      /**
       * uint32 page = 2;
       */
      public int getPage() {
        return page_;
      }
      /**
       * uint32 page = 2;
       */
      public Builder setPage(int value) {
        
        page_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 page = 2;
       */
      public Builder clearPage() {
        
        page_ = 0;
        onChanged();
        return this;
      }

      private int perPage_ ;
      /**
       * uint32 per_page = 3;
       */
      public int getPerPage() {
        return perPage_;
      }
      /**
       * uint32 per_page = 3;
       */
      public Builder setPerPage(int value) {
        
        perPage_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 per_page = 3;
       */
      public Builder clearPerPage() {
        
        perPage_ = 0;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.ListConceptsRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.ListConceptsRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public ListConceptsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ListConceptsRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.ListConceptsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface PostConceptsSearchesRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.PostConceptsSearchesRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    boolean hasConceptQuery();
    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getConceptQuery();
    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder getConceptQueryOrBuilder();

    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    boolean hasPagination();
    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    clarifai2.internal.grpc.api.PaginationOuterClass.Pagination getPagination();
    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder getPaginationOrBuilder();
  }
  /**
   * Protobuf type {@code clarifai.api.PostConceptsSearchesRequest}
   */
  public  static final class PostConceptsSearchesRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.PostConceptsSearchesRequest)
      PostConceptsSearchesRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PostConceptsSearchesRequest.newBuilder() to construct.
    private PostConceptsSearchesRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private PostConceptsSearchesRequest() {
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private PostConceptsSearchesRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder subBuilder = null;
              if (conceptQuery_ != null) {
                subBuilder = conceptQuery_.toBuilder();
              }
              conceptQuery_ = input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(conceptQuery_);
                conceptQuery_ = subBuilder.buildPartial();
              }

              break;
            }
            case 26: {
              clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder subBuilder = null;
              if (pagination_ != null) {
                subBuilder = pagination_.toBuilder();
              }
              pagination_ = input.readMessage(clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(pagination_);
                pagination_ = subBuilder.buildPartial();
              }

              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsSearchesRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.Builder.class);
    }

    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int CONCEPT_QUERY_FIELD_NUMBER = 2;
    private clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery conceptQuery_;
    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    public boolean hasConceptQuery() {
      return conceptQuery_ != null;
    }
    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getConceptQuery() {
      return conceptQuery_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.getDefaultInstance() : conceptQuery_;
    }
    /**
     * .clarifai.api.ConceptQuery concept_query = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder getConceptQueryOrBuilder() {
      return getConceptQuery();
    }

    public static final int PAGINATION_FIELD_NUMBER = 3;
    private clarifai2.internal.grpc.api.PaginationOuterClass.Pagination pagination_;
    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    public boolean hasPagination() {
      return pagination_ != null;
    }
    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    public clarifai2.internal.grpc.api.PaginationOuterClass.Pagination getPagination() {
      return pagination_ == null ? clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.getDefaultInstance() : pagination_;
    }
    /**
     * .clarifai.api.Pagination pagination = 3;
     */
    public clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder getPaginationOrBuilder() {
      return getPagination();
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      if (conceptQuery_ != null) {
        output.writeMessage(2, getConceptQuery());
      }
      if (pagination_ != null) {
        output.writeMessage(3, getPagination());
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      if (conceptQuery_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getConceptQuery());
      }
      if (pagination_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getPagination());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && (hasConceptQuery() == other.hasConceptQuery());
      if (hasConceptQuery()) {
        result = result && getConceptQuery()
            .equals(other.getConceptQuery());
      }
      result = result && (hasPagination() == other.hasPagination());
      if (hasPagination()) {
        result = result && getPagination()
            .equals(other.getPagination());
      }
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      if (hasConceptQuery()) {
        hash = (37 * hash) + CONCEPT_QUERY_FIELD_NUMBER;
        hash = (53 * hash) + getConceptQuery().hashCode();
      }
      if (hasPagination()) {
        hash = (37 * hash) + PAGINATION_FIELD_NUMBER;
        hash = (53 * hash) + getPagination().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.PostConceptsSearchesRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.PostConceptsSearchesRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsSearchesRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        if (conceptQueryBuilder_ == null) {
          conceptQuery_ = null;
        } else {
          conceptQuery_ = null;
          conceptQueryBuilder_ = null;
        }
        if (paginationBuilder_ == null) {
          pagination_ = null;
        } else {
          pagination_ = null;
          paginationBuilder_ = null;
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest(this);
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        if (conceptQueryBuilder_ == null) {
          result.conceptQuery_ = conceptQuery_;
        } else {
          result.conceptQuery_ = conceptQueryBuilder_.build();
        }
        if (paginationBuilder_ == null) {
          result.pagination_ = pagination_;
        } else {
          result.pagination_ = paginationBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (other.hasConceptQuery()) {
          mergeConceptQuery(other.getConceptQuery());
        }
        if (other.hasPagination()) {
          mergePagination(other.getPagination());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery conceptQuery_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder> conceptQueryBuilder_;
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public boolean hasConceptQuery() {
        return conceptQueryBuilder_ != null || conceptQuery_ != null;
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getConceptQuery() {
        if (conceptQueryBuilder_ == null) {
          return conceptQuery_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.getDefaultInstance() : conceptQuery_;
        } else {
          return conceptQueryBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public Builder setConceptQuery(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery value) {
        if (conceptQueryBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          conceptQuery_ = value;
          onChanged();
        } else {
          conceptQueryBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public Builder setConceptQuery(
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder builderForValue) {
        if (conceptQueryBuilder_ == null) {
          conceptQuery_ = builderForValue.build();
          onChanged();
        } else {
          conceptQueryBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public Builder mergeConceptQuery(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery value) {
        if (conceptQueryBuilder_ == null) {
          if (conceptQuery_ != null) {
            conceptQuery_ =
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.newBuilder(conceptQuery_).mergeFrom(value).buildPartial();
          } else {
            conceptQuery_ = value;
          }
          onChanged();
        } else {
          conceptQueryBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public Builder clearConceptQuery() {
        if (conceptQueryBuilder_ == null) {
          conceptQuery_ = null;
          onChanged();
        } else {
          conceptQuery_ = null;
          conceptQueryBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder getConceptQueryBuilder() {
        
        onChanged();
        return getConceptQueryFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder getConceptQueryOrBuilder() {
        if (conceptQueryBuilder_ != null) {
          return conceptQueryBuilder_.getMessageOrBuilder();
        } else {
          return conceptQuery_ == null ?
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.getDefaultInstance() : conceptQuery_;
        }
      }
      /**
       * .clarifai.api.ConceptQuery concept_query = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder> 
          getConceptQueryFieldBuilder() {
        if (conceptQueryBuilder_ == null) {
          conceptQueryBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder>(
                  getConceptQuery(),
                  getParentForChildren(),
                  isClean());
          conceptQuery_ = null;
        }
        return conceptQueryBuilder_;
      }

      private clarifai2.internal.grpc.api.PaginationOuterClass.Pagination pagination_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.PaginationOuterClass.Pagination, clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder, clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder> paginationBuilder_;
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public boolean hasPagination() {
        return paginationBuilder_ != null || pagination_ != null;
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public clarifai2.internal.grpc.api.PaginationOuterClass.Pagination getPagination() {
        if (paginationBuilder_ == null) {
          return pagination_ == null ? clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.getDefaultInstance() : pagination_;
        } else {
          return paginationBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public Builder setPagination(clarifai2.internal.grpc.api.PaginationOuterClass.Pagination value) {
        if (paginationBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          pagination_ = value;
          onChanged();
        } else {
          paginationBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public Builder setPagination(
          clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder builderForValue) {
        if (paginationBuilder_ == null) {
          pagination_ = builderForValue.build();
          onChanged();
        } else {
          paginationBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public Builder mergePagination(clarifai2.internal.grpc.api.PaginationOuterClass.Pagination value) {
        if (paginationBuilder_ == null) {
          if (pagination_ != null) {
            pagination_ =
              clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.newBuilder(pagination_).mergeFrom(value).buildPartial();
          } else {
            pagination_ = value;
          }
          onChanged();
        } else {
          paginationBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public Builder clearPagination() {
        if (paginationBuilder_ == null) {
          pagination_ = null;
          onChanged();
        } else {
          pagination_ = null;
          paginationBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder getPaginationBuilder() {
        
        onChanged();
        return getPaginationFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      public clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder getPaginationOrBuilder() {
        if (paginationBuilder_ != null) {
          return paginationBuilder_.getMessageOrBuilder();
        } else {
          return pagination_ == null ?
              clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.getDefaultInstance() : pagination_;
        }
      }
      /**
       * .clarifai.api.Pagination pagination = 3;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.PaginationOuterClass.Pagination, clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder, clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder> 
          getPaginationFieldBuilder() {
        if (paginationBuilder_ == null) {
          paginationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.PaginationOuterClass.Pagination, clarifai2.internal.grpc.api.PaginationOuterClass.Pagination.Builder, clarifai2.internal.grpc.api.PaginationOuterClass.PaginationOrBuilder>(
                  getPagination(),
                  getParentForChildren(),
                  isClean());
          pagination_ = null;
        }
        return paginationBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.PostConceptsSearchesRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.PostConceptsSearchesRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public PostConceptsSearchesRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PostConceptsSearchesRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsSearchesRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConceptQueryOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.ConceptQuery)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string name = 1;
     */
    java.lang.String getName();
    /**
     * string name = 1;
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * string language = 2;
     */
    java.lang.String getLanguage();
    /**
     * string language = 2;
     */
    com.google.protobuf.ByteString
        getLanguageBytes();
  }
  /**
   * Protobuf type {@code clarifai.api.ConceptQuery}
   */
  public  static final class ConceptQuery extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.ConceptQuery)
      ConceptQueryOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ConceptQuery.newBuilder() to construct.
    private ConceptQuery(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ConceptQuery() {
      name_ = "";
      language_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ConceptQuery(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              language_ = s;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptQuery_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptQuery_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder.class);
    }

    public static final int NAME_FIELD_NUMBER = 1;
    private volatile java.lang.Object name_;
    /**
     * string name = 1;
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * string name = 1;
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int LANGUAGE_FIELD_NUMBER = 2;
    private volatile java.lang.Object language_;
    /**
     * string language = 2;
     */
    public java.lang.String getLanguage() {
      java.lang.Object ref = language_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        language_ = s;
        return s;
      }
    }
    /**
     * string language = 2;
     */
    public com.google.protobuf.ByteString
        getLanguageBytes() {
      java.lang.Object ref = language_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        language_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      if (!getLanguageBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, language_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      if (!getLanguageBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, language_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery other = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery) obj;

      boolean result = true;
      result = result && getName()
          .equals(other.getName());
      result = result && getLanguage()
          .equals(other.getLanguage());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + LANGUAGE_FIELD_NUMBER;
      hash = (53 * hash) + getLanguage().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.ConceptQuery}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.ConceptQuery)
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQueryOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptQuery_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptQuery_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.class, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        name_ = "";

        language_ = "";

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_ConceptQuery_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery result = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery(this);
        result.name_ = name_;
        result.language_ = language_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getLanguage().isEmpty()) {
          language_ = other.language_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object name_ = "";
      /**
       * string name = 1;
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string name = 1;
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string name = 1;
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * string name = 1;
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * string name = 1;
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object language_ = "";
      /**
       * string language = 2;
       */
      public java.lang.String getLanguage() {
        java.lang.Object ref = language_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          language_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string language = 2;
       */
      public com.google.protobuf.ByteString
          getLanguageBytes() {
        java.lang.Object ref = language_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          language_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string language = 2;
       */
      public Builder setLanguage(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        language_ = value;
        onChanged();
        return this;
      }
      /**
       * string language = 2;
       */
      public Builder clearLanguage() {
        
        language_ = getDefaultInstance().getLanguage();
        onChanged();
        return this;
      }
      /**
       * string language = 2;
       */
      public Builder setLanguageBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        language_ = value;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.ConceptQuery)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.ConceptQuery)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public ConceptQuery parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ConceptQuery(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptQuery getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface PostConceptsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.PostConceptsRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    java.util.List 
        getConceptsList();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index);
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    int getConceptsCount();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    java.util.List 
        getConceptsOrBuilderList();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code clarifai.api.PostConceptsRequest}
   */
  public  static final class PostConceptsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.PostConceptsRequest)
      PostConceptsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PostConceptsRequest.newBuilder() to construct.
    private PostConceptsRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private PostConceptsRequest() {
      concepts_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private PostConceptsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                concepts_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              concepts_.add(
                  input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.Concept.parser(), extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = java.util.Collections.unmodifiableList(concepts_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.Builder.class);
    }

    private int bitField0_;
    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int CONCEPTS_FIELD_NUMBER = 2;
    private java.util.List concepts_;
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public java.util.List getConceptsList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public java.util.List 
        getConceptsOrBuilderList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public int getConceptsCount() {
      return concepts_.size();
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
      return concepts_.get(index);
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index) {
      return concepts_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        output.writeMessage(2, concepts_.get(i));
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, concepts_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && getConceptsList()
          .equals(other.getConceptsList());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      if (getConceptsCount() > 0) {
        hash = (37 * hash) + CONCEPTS_FIELD_NUMBER;
        hash = (53 * hash) + getConceptsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.PostConceptsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.PostConceptsRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getConceptsFieldBuilder();
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          conceptsBuilder_.clear();
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PostConceptsRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        if (conceptsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            concepts_ = java.util.Collections.unmodifiableList(concepts_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.concepts_ = concepts_;
        } else {
          result.concepts_ = conceptsBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (conceptsBuilder_ == null) {
          if (!other.concepts_.isEmpty()) {
            if (concepts_.isEmpty()) {
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureConceptsIsMutable();
              concepts_.addAll(other.concepts_);
            }
            onChanged();
          }
        } else {
          if (!other.concepts_.isEmpty()) {
            if (conceptsBuilder_.isEmpty()) {
              conceptsBuilder_.dispose();
              conceptsBuilder_ = null;
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
              conceptsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConceptsFieldBuilder() : null;
            } else {
              conceptsBuilder_.addAllMessages(other.concepts_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private java.util.List concepts_ =
        java.util.Collections.emptyList();
      private void ensureConceptsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = new java.util.ArrayList(concepts_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> conceptsBuilder_;

      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List getConceptsList() {
        if (conceptsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(concepts_);
        } else {
          return conceptsBuilder_.getMessageList();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public int getConceptsCount() {
        if (conceptsBuilder_ == null) {
          return concepts_.size();
        } else {
          return conceptsBuilder_.getCount();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);
        } else {
          return conceptsBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.set(index, value);
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.set(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(index, value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addAllConcepts(
          java.lang.Iterable values) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, concepts_);
          onChanged();
        } else {
          conceptsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder clearConcepts() {
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          conceptsBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder removeConcepts(int index) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.remove(index);
          onChanged();
        } else {
          conceptsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder getConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
          int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);  } else {
          return conceptsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List 
           getConceptsOrBuilderList() {
        if (conceptsBuilder_ != null) {
          return conceptsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(concepts_);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder() {
        return getConceptsFieldBuilder().addBuilder(
            clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().addBuilder(
            index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List 
           getConceptsBuilderList() {
        return getConceptsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> 
          getConceptsFieldBuilder() {
        if (conceptsBuilder_ == null) {
          conceptsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder>(
                  concepts_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          concepts_ = null;
        }
        return conceptsBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.PostConceptsRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.PostConceptsRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public PostConceptsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PostConceptsRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.PostConceptsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface PatchConceptsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.PatchConceptsRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    java.util.List 
        getConceptsList();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index);
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    int getConceptsCount();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    java.util.List 
        getConceptsOrBuilderList();
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index);

    /**
     * string action = 3;
     */
    java.lang.String getAction();
    /**
     * string action = 3;
     */
    com.google.protobuf.ByteString
        getActionBytes();
  }
  /**
   * Protobuf type {@code clarifai.api.PatchConceptsRequest}
   */
  public  static final class PatchConceptsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.PatchConceptsRequest)
      PatchConceptsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PatchConceptsRequest.newBuilder() to construct.
    private PatchConceptsRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private PatchConceptsRequest() {
      concepts_ = java.util.Collections.emptyList();
      action_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private PatchConceptsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                concepts_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              concepts_.add(
                  input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.Concept.parser(), extensionRegistry));
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();

              action_ = s;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = java.util.Collections.unmodifiableList(concepts_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PatchConceptsRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PatchConceptsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.Builder.class);
    }

    private int bitField0_;
    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int CONCEPTS_FIELD_NUMBER = 2;
    private java.util.List concepts_;
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public java.util.List getConceptsList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public java.util.List 
        getConceptsOrBuilderList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public int getConceptsCount() {
      return concepts_.size();
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
      return concepts_.get(index);
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index) {
      return concepts_.get(index);
    }

    public static final int ACTION_FIELD_NUMBER = 3;
    private volatile java.lang.Object action_;
    /**
     * string action = 3;
     */
    public java.lang.String getAction() {
      java.lang.Object ref = action_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        action_ = s;
        return s;
      }
    }
    /**
     * string action = 3;
     */
    public com.google.protobuf.ByteString
        getActionBytes() {
      java.lang.Object ref = action_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        action_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        output.writeMessage(2, concepts_.get(i));
      }
      if (!getActionBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, action_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, concepts_.get(i));
      }
      if (!getActionBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, action_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && getConceptsList()
          .equals(other.getConceptsList());
      result = result && getAction()
          .equals(other.getAction());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      if (getConceptsCount() > 0) {
        hash = (37 * hash) + CONCEPTS_FIELD_NUMBER;
        hash = (53 * hash) + getConceptsList().hashCode();
      }
      hash = (37 * hash) + ACTION_FIELD_NUMBER;
      hash = (53 * hash) + getAction().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.PatchConceptsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.PatchConceptsRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PatchConceptsRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PatchConceptsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getConceptsFieldBuilder();
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          conceptsBuilder_.clear();
        }
        action_ = "";

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_PatchConceptsRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        if (conceptsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            concepts_ = java.util.Collections.unmodifiableList(concepts_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.concepts_ = concepts_;
        } else {
          result.concepts_ = conceptsBuilder_.build();
        }
        result.action_ = action_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (conceptsBuilder_ == null) {
          if (!other.concepts_.isEmpty()) {
            if (concepts_.isEmpty()) {
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureConceptsIsMutable();
              concepts_.addAll(other.concepts_);
            }
            onChanged();
          }
        } else {
          if (!other.concepts_.isEmpty()) {
            if (conceptsBuilder_.isEmpty()) {
              conceptsBuilder_.dispose();
              conceptsBuilder_ = null;
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
              conceptsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConceptsFieldBuilder() : null;
            } else {
              conceptsBuilder_.addAllMessages(other.concepts_);
            }
          }
        }
        if (!other.getAction().isEmpty()) {
          action_ = other.action_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private java.util.List concepts_ =
        java.util.Collections.emptyList();
      private void ensureConceptsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = new java.util.ArrayList(concepts_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> conceptsBuilder_;

      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List getConceptsList() {
        if (conceptsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(concepts_);
        } else {
          return conceptsBuilder_.getMessageList();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public int getConceptsCount() {
        if (conceptsBuilder_ == null) {
          return concepts_.size();
        } else {
          return conceptsBuilder_.getCount();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);
        } else {
          return conceptsBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.set(index, value);
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.set(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(index, value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder addAllConcepts(
          java.lang.Iterable values) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, concepts_);
          onChanged();
        } else {
          conceptsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder clearConcepts() {
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          conceptsBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public Builder removeConcepts(int index) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.remove(index);
          onChanged();
        } else {
          conceptsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder getConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
          int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);  } else {
          return conceptsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List 
           getConceptsOrBuilderList() {
        if (conceptsBuilder_ != null) {
          return conceptsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(concepts_);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder() {
        return getConceptsFieldBuilder().addBuilder(
            clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().addBuilder(
            index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2;
       */
      public java.util.List 
           getConceptsBuilderList() {
        return getConceptsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> 
          getConceptsFieldBuilder() {
        if (conceptsBuilder_ == null) {
          conceptsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder>(
                  concepts_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          concepts_ = null;
        }
        return conceptsBuilder_;
      }

      private java.lang.Object action_ = "";
      /**
       * string action = 3;
       */
      public java.lang.String getAction() {
        java.lang.Object ref = action_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          action_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string action = 3;
       */
      public com.google.protobuf.ByteString
          getActionBytes() {
        java.lang.Object ref = action_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          action_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string action = 3;
       */
      public Builder setAction(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        action_ = value;
        onChanged();
        return this;
      }
      /**
       * string action = 3;
       */
      public Builder clearAction() {
        
        action_ = getDefaultInstance().getAction();
        onChanged();
        return this;
      }
      /**
       * string action = 3;
       */
      public Builder setActionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        action_ = value;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.PatchConceptsRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.PatchConceptsRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public PatchConceptsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PatchConceptsRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.PatchConceptsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GetConceptCountsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.GetConceptCountsRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    boolean hasUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId();
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder();

    /**
     * uint32 page = 2;
     */
    int getPage();

    /**
     * uint32 per_page = 3;
     */
    int getPerPage();
  }
  /**
   * Protobuf type {@code clarifai.api.GetConceptCountsRequest}
   */
  public  static final class GetConceptCountsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.GetConceptCountsRequest)
      GetConceptCountsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetConceptCountsRequest.newBuilder() to construct.
    private GetConceptCountsRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private GetConceptCountsRequest() {
      page_ = 0;
      perPage_ = 0;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetConceptCountsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder subBuilder = null;
              if (userAppId_ != null) {
                subBuilder = userAppId_.toBuilder();
              }
              userAppId_ = input.readMessage(clarifai2.internal.grpc.api.Common.UserAppIDSet.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(userAppId_);
                userAppId_ = subBuilder.buildPartial();
              }

              break;
            }
            case 16: {

              page_ = input.readUInt32();
              break;
            }
            case 24: {

              perPage_ = input.readUInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptCountsRequest_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptCountsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.Builder.class);
    }

    public static final int USER_APP_ID_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_;
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public boolean hasUserAppId() {
      return userAppId_ != null;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
      return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
    }
    /**
     * .clarifai.api.UserAppIDSet user_app_id = 1;
     */
    public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
      return getUserAppId();
    }

    public static final int PAGE_FIELD_NUMBER = 2;
    private int page_;
    /**
     * uint32 page = 2;
     */
    public int getPage() {
      return page_;
    }

    public static final int PER_PAGE_FIELD_NUMBER = 3;
    private int perPage_;
    /**
     * uint32 per_page = 3;
     */
    public int getPerPage() {
      return perPage_;
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (userAppId_ != null) {
        output.writeMessage(1, getUserAppId());
      }
      if (page_ != 0) {
        output.writeUInt32(2, page_);
      }
      if (perPage_ != 0) {
        output.writeUInt32(3, perPage_);
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (userAppId_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUserAppId());
      }
      if (page_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(2, page_);
      }
      if (perPage_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(3, perPage_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest other = (clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest) obj;

      boolean result = true;
      result = result && (hasUserAppId() == other.hasUserAppId());
      if (hasUserAppId()) {
        result = result && getUserAppId()
            .equals(other.getUserAppId());
      }
      result = result && (getPage()
          == other.getPage());
      result = result && (getPerPage()
          == other.getPerPage());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUserAppId()) {
        hash = (37 * hash) + USER_APP_ID_FIELD_NUMBER;
        hash = (53 * hash) + getUserAppId().hashCode();
      }
      hash = (37 * hash) + PAGE_FIELD_NUMBER;
      hash = (53 * hash) + getPage();
      hash = (37 * hash) + PER_PAGE_FIELD_NUMBER;
      hash = (53 * hash) + getPerPage();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.GetConceptCountsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.GetConceptCountsRequest)
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptCountsRequest_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptCountsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.class, clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }
        page_ = 0;

        perPage_ = 0;

        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_GetConceptCountsRequest_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest result = new clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest(this);
        if (userAppIdBuilder_ == null) {
          result.userAppId_ = userAppId_;
        } else {
          result.userAppId_ = userAppIdBuilder_.build();
        }
        result.page_ = page_;
        result.perPage_ = perPage_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest.getDefaultInstance()) return this;
        if (other.hasUserAppId()) {
          mergeUserAppId(other.getUserAppId());
        }
        if (other.getPage() != 0) {
          setPage(other.getPage());
        }
        if (other.getPerPage() != 0) {
          setPerPage(other.getPerPage());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private clarifai2.internal.grpc.api.Common.UserAppIDSet userAppId_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> userAppIdBuilder_;
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public boolean hasUserAppId() {
        return userAppIdBuilder_ != null || userAppId_ != null;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet getUserAppId() {
        if (userAppIdBuilder_ == null) {
          return userAppId_ == null ? clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        } else {
          return userAppIdBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          userAppId_ = value;
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder setUserAppId(
          clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder builderForValue) {
        if (userAppIdBuilder_ == null) {
          userAppId_ = builderForValue.build();
          onChanged();
        } else {
          userAppIdBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder mergeUserAppId(clarifai2.internal.grpc.api.Common.UserAppIDSet value) {
        if (userAppIdBuilder_ == null) {
          if (userAppId_ != null) {
            userAppId_ =
              clarifai2.internal.grpc.api.Common.UserAppIDSet.newBuilder(userAppId_).mergeFrom(value).buildPartial();
          } else {
            userAppId_ = value;
          }
          onChanged();
        } else {
          userAppIdBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public Builder clearUserAppId() {
        if (userAppIdBuilder_ == null) {
          userAppId_ = null;
          onChanged();
        } else {
          userAppId_ = null;
          userAppIdBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder getUserAppIdBuilder() {
        
        onChanged();
        return getUserAppIdFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      public clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder getUserAppIdOrBuilder() {
        if (userAppIdBuilder_ != null) {
          return userAppIdBuilder_.getMessageOrBuilder();
        } else {
          return userAppId_ == null ?
              clarifai2.internal.grpc.api.Common.UserAppIDSet.getDefaultInstance() : userAppId_;
        }
      }
      /**
       * .clarifai.api.UserAppIDSet user_app_id = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder> 
          getUserAppIdFieldBuilder() {
        if (userAppIdBuilder_ == null) {
          userAppIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.Common.UserAppIDSet, clarifai2.internal.grpc.api.Common.UserAppIDSet.Builder, clarifai2.internal.grpc.api.Common.UserAppIDSetOrBuilder>(
                  getUserAppId(),
                  getParentForChildren(),
                  isClean());
          userAppId_ = null;
        }
        return userAppIdBuilder_;
      }

      private int page_ ;
      /**
       * uint32 page = 2;
       */
      public int getPage() {
        return page_;
      }
      /**
       * uint32 page = 2;
       */
      public Builder setPage(int value) {
        
        page_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 page = 2;
       */
      public Builder clearPage() {
        
        page_ = 0;
        onChanged();
        return this;
      }

      private int perPage_ ;
      /**
       * uint32 per_page = 3;
       */
      public int getPerPage() {
        return perPage_;
      }
      /**
       * uint32 per_page = 3;
       */
      public Builder setPerPage(int value) {
        
        perPage_ = value;
        onChanged();
        return this;
      }
      /**
       * uint32 per_page = 3;
       */
      public Builder clearPerPage() {
        
        perPage_ = 0;
        onChanged();
        return this;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.GetConceptCountsRequest)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.GetConceptCountsRequest)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public GetConceptCountsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetConceptCountsRequest(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.GetConceptCountsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface SingleConceptResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.SingleConceptResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.status.Status status = 1;
     */
    boolean hasStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder();

    /**
     * .clarifai.api.Concept concept = 2;
     */
    boolean hasConcept();
    /**
     * .clarifai.api.Concept concept = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcept();
    /**
     * .clarifai.api.Concept concept = 2;
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptOrBuilder();
  }
  /**
   * Protobuf type {@code clarifai.api.SingleConceptResponse}
   */
  public  static final class SingleConceptResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.SingleConceptResponse)
      SingleConceptResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SingleConceptResponse.newBuilder() to construct.
    private SingleConceptResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private SingleConceptResponse() {
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SingleConceptResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder subBuilder = null;
              if (status_ != null) {
                subBuilder = status_.toBuilder();
              }
              status_ = input.readMessage(clarifai2.internal.grpc.api.status.StatusOuterClass.Status.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(status_);
                status_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder subBuilder = null;
              if (concept_ != null) {
                subBuilder = concept_.toBuilder();
              }
              concept_ = input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.Concept.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(concept_);
                concept_ = subBuilder.buildPartial();
              }

              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_SingleConceptResponse_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_SingleConceptResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.Builder.class);
    }

    public static final int STATUS_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_;
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public boolean hasStatus() {
      return status_ != null;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
      return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
      return getStatus();
    }

    public static final int CONCEPT_FIELD_NUMBER = 2;
    private clarifai2.internal.grpc.api.ConceptOuterClass.Concept concept_;
    /**
     * .clarifai.api.Concept concept = 2;
     */
    public boolean hasConcept() {
      return concept_ != null;
    }
    /**
     * .clarifai.api.Concept concept = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcept() {
      return concept_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance() : concept_;
    }
    /**
     * .clarifai.api.Concept concept = 2;
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptOrBuilder() {
      return getConcept();
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (status_ != null) {
        output.writeMessage(1, getStatus());
      }
      if (concept_ != null) {
        output.writeMessage(2, getConcept());
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (status_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getStatus());
      }
      if (concept_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getConcept());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse other = (clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse) obj;

      boolean result = true;
      result = result && (hasStatus() == other.hasStatus());
      if (hasStatus()) {
        result = result && getStatus()
            .equals(other.getStatus());
      }
      result = result && (hasConcept() == other.hasConcept());
      if (hasConcept()) {
        result = result && getConcept()
            .equals(other.getConcept());
      }
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasStatus()) {
        hash = (37 * hash) + STATUS_FIELD_NUMBER;
        hash = (53 * hash) + getStatus().hashCode();
      }
      if (hasConcept()) {
        hash = (37 * hash) + CONCEPT_FIELD_NUMBER;
        hash = (53 * hash) + getConcept().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.SingleConceptResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.SingleConceptResponse)
        clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_SingleConceptResponse_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_SingleConceptResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      public Builder clear() {
        super.clear();
        if (statusBuilder_ == null) {
          status_ = null;
        } else {
          status_ = null;
          statusBuilder_ = null;
        }
        if (conceptBuilder_ == null) {
          concept_ = null;
        } else {
          concept_ = null;
          conceptBuilder_ = null;
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_SingleConceptResponse_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse result = new clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse(this);
        if (statusBuilder_ == null) {
          result.status_ = status_;
        } else {
          result.status_ = statusBuilder_.build();
        }
        if (conceptBuilder_ == null) {
          result.concept_ = concept_;
        } else {
          result.concept_ = conceptBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse.getDefaultInstance()) return this;
        if (other.hasStatus()) {
          mergeStatus(other.getStatus());
        }
        if (other.hasConcept()) {
          mergeConcept(other.getConcept());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> statusBuilder_;
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public boolean hasStatus() {
        return statusBuilder_ != null || status_ != null;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
        if (statusBuilder_ == null) {
          return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        } else {
          return statusBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          status_ = value;
          onChanged();
        } else {
          statusBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder builderForValue) {
        if (statusBuilder_ == null) {
          status_ = builderForValue.build();
          onChanged();
        } else {
          statusBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder mergeStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (status_ != null) {
            status_ =
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.newBuilder(status_).mergeFrom(value).buildPartial();
          } else {
            status_ = value;
          }
          onChanged();
        } else {
          statusBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder clearStatus() {
        if (statusBuilder_ == null) {
          status_ = null;
          onChanged();
        } else {
          status_ = null;
          statusBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder getStatusBuilder() {
        
        onChanged();
        return getStatusFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
        if (statusBuilder_ != null) {
          return statusBuilder_.getMessageOrBuilder();
        } else {
          return status_ == null ?
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> 
          getStatusFieldBuilder() {
        if (statusBuilder_ == null) {
          statusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder>(
                  getStatus(),
                  getParentForChildren(),
                  isClean());
          status_ = null;
        }
        return statusBuilder_;
      }

      private clarifai2.internal.grpc.api.ConceptOuterClass.Concept concept_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> conceptBuilder_;
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public boolean hasConcept() {
        return conceptBuilder_ != null || concept_ != null;
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcept() {
        if (conceptBuilder_ == null) {
          return concept_ == null ? clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance() : concept_;
        } else {
          return conceptBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public Builder setConcept(clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          concept_ = value;
          onChanged();
        } else {
          conceptBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public Builder setConcept(
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptBuilder_ == null) {
          concept_ = builderForValue.build();
          onChanged();
        } else {
          conceptBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public Builder mergeConcept(clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptBuilder_ == null) {
          if (concept_ != null) {
            concept_ =
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept.newBuilder(concept_).mergeFrom(value).buildPartial();
          } else {
            concept_ = value;
          }
          onChanged();
        } else {
          conceptBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public Builder clearConcept() {
        if (conceptBuilder_ == null) {
          concept_ = null;
          onChanged();
        } else {
          concept_ = null;
          conceptBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder getConceptBuilder() {
        
        onChanged();
        return getConceptFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptOrBuilder() {
        if (conceptBuilder_ != null) {
          return conceptBuilder_.getMessageOrBuilder();
        } else {
          return concept_ == null ?
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance() : concept_;
        }
      }
      /**
       * .clarifai.api.Concept concept = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> 
          getConceptFieldBuilder() {
        if (conceptBuilder_ == null) {
          conceptBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder>(
                  getConcept(),
                  getParentForChildren(),
                  isClean());
          concept_ = null;
        }
        return conceptBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.SingleConceptResponse)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.SingleConceptResponse)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public SingleConceptResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SingleConceptResponse(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.SingleConceptResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MultiConceptResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.MultiConceptResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.status.Status status = 1;
     */
    boolean hasStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder();

    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    java.util.List 
        getConceptsList();
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index);
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    int getConceptsCount();
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    java.util.List 
        getConceptsOrBuilderList();
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code clarifai.api.MultiConceptResponse}
   */
  public  static final class MultiConceptResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.MultiConceptResponse)
      MultiConceptResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MultiConceptResponse.newBuilder() to construct.
    private MultiConceptResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private MultiConceptResponse() {
      concepts_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MultiConceptResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder subBuilder = null;
              if (status_ != null) {
                subBuilder = status_.toBuilder();
              }
              status_ = input.readMessage(clarifai2.internal.grpc.api.status.StatusOuterClass.Status.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(status_);
                status_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                concepts_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              concepts_.add(
                  input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.Concept.parser(), extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = java.util.Collections.unmodifiableList(concepts_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptResponse_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.Builder.class);
    }

    private int bitField0_;
    public static final int STATUS_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_;
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public boolean hasStatus() {
      return status_ != null;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
      return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
      return getStatus();
    }

    public static final int CONCEPTS_FIELD_NUMBER = 2;
    private java.util.List concepts_;
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public java.util.List getConceptsList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public java.util.List 
        getConceptsOrBuilderList() {
      return concepts_;
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public int getConceptsCount() {
      return concepts_.size();
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
      return concepts_.get(index);
    }
    /**
     * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
        int index) {
      return concepts_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (status_ != null) {
        output.writeMessage(1, getStatus());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        output.writeMessage(2, concepts_.get(i));
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (status_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getStatus());
      }
      for (int i = 0; i < concepts_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, concepts_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse other = (clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse) obj;

      boolean result = true;
      result = result && (hasStatus() == other.hasStatus());
      if (hasStatus()) {
        result = result && getStatus()
            .equals(other.getStatus());
      }
      result = result && getConceptsList()
          .equals(other.getConceptsList());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasStatus()) {
        hash = (37 * hash) + STATUS_FIELD_NUMBER;
        hash = (53 * hash) + getStatus().hashCode();
      }
      if (getConceptsCount() > 0) {
        hash = (37 * hash) + CONCEPTS_FIELD_NUMBER;
        hash = (53 * hash) + getConceptsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.MultiConceptResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.MultiConceptResponse)
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptResponse_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getConceptsFieldBuilder();
        }
      }
      public Builder clear() {
        super.clear();
        if (statusBuilder_ == null) {
          status_ = null;
        } else {
          status_ = null;
          statusBuilder_ = null;
        }
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          conceptsBuilder_.clear();
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptResponse_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse result = new clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (statusBuilder_ == null) {
          result.status_ = status_;
        } else {
          result.status_ = statusBuilder_.build();
        }
        if (conceptsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            concepts_ = java.util.Collections.unmodifiableList(concepts_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.concepts_ = concepts_;
        } else {
          result.concepts_ = conceptsBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse.getDefaultInstance()) return this;
        if (other.hasStatus()) {
          mergeStatus(other.getStatus());
        }
        if (conceptsBuilder_ == null) {
          if (!other.concepts_.isEmpty()) {
            if (concepts_.isEmpty()) {
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureConceptsIsMutable();
              concepts_.addAll(other.concepts_);
            }
            onChanged();
          }
        } else {
          if (!other.concepts_.isEmpty()) {
            if (conceptsBuilder_.isEmpty()) {
              conceptsBuilder_.dispose();
              conceptsBuilder_ = null;
              concepts_ = other.concepts_;
              bitField0_ = (bitField0_ & ~0x00000002);
              conceptsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConceptsFieldBuilder() : null;
            } else {
              conceptsBuilder_.addAllMessages(other.concepts_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> statusBuilder_;
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public boolean hasStatus() {
        return statusBuilder_ != null || status_ != null;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
        if (statusBuilder_ == null) {
          return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        } else {
          return statusBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          status_ = value;
          onChanged();
        } else {
          statusBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder builderForValue) {
        if (statusBuilder_ == null) {
          status_ = builderForValue.build();
          onChanged();
        } else {
          statusBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder mergeStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (status_ != null) {
            status_ =
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.newBuilder(status_).mergeFrom(value).buildPartial();
          } else {
            status_ = value;
          }
          onChanged();
        } else {
          statusBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder clearStatus() {
        if (statusBuilder_ == null) {
          status_ = null;
          onChanged();
        } else {
          status_ = null;
          statusBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder getStatusBuilder() {
        
        onChanged();
        return getStatusFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
        if (statusBuilder_ != null) {
          return statusBuilder_.getMessageOrBuilder();
        } else {
          return status_ == null ?
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> 
          getStatusFieldBuilder() {
        if (statusBuilder_ == null) {
          statusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder>(
                  getStatus(),
                  getParentForChildren(),
                  isClean());
          status_ = null;
        }
        return statusBuilder_;
      }

      private java.util.List concepts_ =
        java.util.Collections.emptyList();
      private void ensureConceptsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          concepts_ = new java.util.ArrayList(concepts_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> conceptsBuilder_;

      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List getConceptsList() {
        if (conceptsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(concepts_);
        } else {
          return conceptsBuilder_.getMessageList();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public int getConceptsCount() {
        if (conceptsBuilder_ == null) {
          return concepts_.size();
        } else {
          return conceptsBuilder_.getCount();
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept getConcepts(int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);
        } else {
          return conceptsBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.set(index, value);
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder setConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.set(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConcepts(clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept value) {
        if (conceptsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptsIsMutable();
          concepts_.add(index, value);
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConcepts(
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConcepts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder builderForValue) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.add(index, builderForValue.build());
          onChanged();
        } else {
          conceptsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addAllConcepts(
          java.lang.Iterable values) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, concepts_);
          onChanged();
        } else {
          conceptsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder clearConcepts() {
        if (conceptsBuilder_ == null) {
          concepts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          conceptsBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder removeConcepts(int index) {
        if (conceptsBuilder_ == null) {
          ensureConceptsIsMutable();
          concepts_.remove(index);
          onChanged();
        } else {
          conceptsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder getConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder getConceptsOrBuilder(
          int index) {
        if (conceptsBuilder_ == null) {
          return concepts_.get(index);  } else {
          return conceptsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List 
           getConceptsOrBuilderList() {
        if (conceptsBuilder_ != null) {
          return conceptsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(concepts_);
        }
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder() {
        return getConceptsFieldBuilder().addBuilder(
            clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder addConceptsBuilder(
          int index) {
        return getConceptsFieldBuilder().addBuilder(
            index, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.Concept concepts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List 
           getConceptsBuilderList() {
        return getConceptsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder> 
          getConceptsFieldBuilder() {
        if (conceptsBuilder_ == null) {
          conceptsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.Concept, clarifai2.internal.grpc.api.ConceptOuterClass.Concept.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptOrBuilder>(
                  concepts_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          concepts_ = null;
        }
        return conceptsBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.MultiConceptResponse)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.MultiConceptResponse)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public MultiConceptResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new MultiConceptResponse(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MultiConceptCountResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clarifai.api.MultiConceptCountResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .clarifai.api.status.Status status = 1;
     */
    boolean hasStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus();
    /**
     * .clarifai.api.status.Status status = 1;
     */
    clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder();

    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    java.util.List 
        getConceptCountsList();
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getConceptCounts(int index);
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    int getConceptCountsCount();
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    java.util.List 
        getConceptCountsOrBuilderList();
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder getConceptCountsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code clarifai.api.MultiConceptCountResponse}
   */
  public  static final class MultiConceptCountResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clarifai.api.MultiConceptCountResponse)
      MultiConceptCountResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MultiConceptCountResponse.newBuilder() to construct.
    private MultiConceptCountResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private MultiConceptCountResponse() {
      conceptCounts_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MultiConceptCountResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder subBuilder = null;
              if (status_ != null) {
                subBuilder = status_.toBuilder();
              }
              status_ = input.readMessage(clarifai2.internal.grpc.api.status.StatusOuterClass.Status.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(status_);
                status_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                conceptCounts_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              conceptCounts_.add(
                  input.readMessage(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.parser(), extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          conceptCounts_ = java.util.Collections.unmodifiableList(conceptCounts_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptCountResponse_descriptor;
    }

    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptCountResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.Builder.class);
    }

    private int bitField0_;
    public static final int STATUS_FIELD_NUMBER = 1;
    private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_;
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public boolean hasStatus() {
      return status_ != null;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
      return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
    }
    /**
     * .clarifai.api.status.Status status = 1;
     */
    public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
      return getStatus();
    }

    public static final int CONCEPT_COUNTS_FIELD_NUMBER = 2;
    private java.util.List conceptCounts_;
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public java.util.List getConceptCountsList() {
      return conceptCounts_;
    }
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public java.util.List 
        getConceptCountsOrBuilderList() {
      return conceptCounts_;
    }
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public int getConceptCountsCount() {
      return conceptCounts_.size();
    }
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getConceptCounts(int index) {
      return conceptCounts_.get(index);
    }
    /**
     * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
     */
    public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder getConceptCountsOrBuilder(
        int index) {
      return conceptCounts_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (status_ != null) {
        output.writeMessage(1, getStatus());
      }
      for (int i = 0; i < conceptCounts_.size(); i++) {
        output.writeMessage(2, conceptCounts_.get(i));
      }
      unknownFields.writeTo(output);
    }

    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (status_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getStatus());
      }
      for (int i = 0; i < conceptCounts_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, conceptCounts_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse)) {
        return super.equals(obj);
      }
      clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse other = (clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse) obj;

      boolean result = true;
      result = result && (hasStatus() == other.hasStatus());
      if (hasStatus()) {
        result = result && getStatus()
            .equals(other.getStatus());
      }
      result = result && getConceptCountsList()
          .equals(other.getConceptCountsList());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasStatus()) {
        hash = (37 * hash) + STATUS_FIELD_NUMBER;
        hash = (53 * hash) + getStatus().hashCode();
      }
      if (getConceptCountsCount() > 0) {
        hash = (37 * hash) + CONCEPT_COUNTS_FIELD_NUMBER;
        hash = (53 * hash) + getConceptCountsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code clarifai.api.MultiConceptCountResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:clarifai.api.MultiConceptCountResponse)
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptCountResponse_descriptor;
      }

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptCountResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.class, clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.Builder.class);
      }

      // Construct using clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getConceptCountsFieldBuilder();
        }
      }
      public Builder clear() {
        super.clear();
        if (statusBuilder_ == null) {
          status_ = null;
        } else {
          status_ = null;
          statusBuilder_ = null;
        }
        if (conceptCountsBuilder_ == null) {
          conceptCounts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          conceptCountsBuilder_.clear();
        }
        return this;
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.internal_static_clarifai_api_MultiConceptCountResponse_descriptor;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse getDefaultInstanceForType() {
        return clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.getDefaultInstance();
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse build() {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse buildPartial() {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse result = new clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (statusBuilder_ == null) {
          result.status_ = status_;
        } else {
          result.status_ = statusBuilder_.build();
        }
        if (conceptCountsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            conceptCounts_ = java.util.Collections.unmodifiableList(conceptCounts_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.conceptCounts_ = conceptCounts_;
        } else {
          result.conceptCounts_ = conceptCountsBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder clone() {
        return (Builder) super.clone();
      }
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse) {
          return mergeFrom((clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse other) {
        if (other == clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse.getDefaultInstance()) return this;
        if (other.hasStatus()) {
          mergeStatus(other.getStatus());
        }
        if (conceptCountsBuilder_ == null) {
          if (!other.conceptCounts_.isEmpty()) {
            if (conceptCounts_.isEmpty()) {
              conceptCounts_ = other.conceptCounts_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureConceptCountsIsMutable();
              conceptCounts_.addAll(other.conceptCounts_);
            }
            onChanged();
          }
        } else {
          if (!other.conceptCounts_.isEmpty()) {
            if (conceptCountsBuilder_.isEmpty()) {
              conceptCountsBuilder_.dispose();
              conceptCountsBuilder_ = null;
              conceptCounts_ = other.conceptCounts_;
              bitField0_ = (bitField0_ & ~0x00000002);
              conceptCountsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConceptCountsFieldBuilder() : null;
            } else {
              conceptCountsBuilder_.addAllMessages(other.conceptCounts_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private clarifai2.internal.grpc.api.status.StatusOuterClass.Status status_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> statusBuilder_;
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public boolean hasStatus() {
        return statusBuilder_ != null || status_ != null;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status getStatus() {
        if (statusBuilder_ == null) {
          return status_ == null ? clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        } else {
          return statusBuilder_.getMessage();
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          status_ = value;
          onChanged();
        } else {
          statusBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder setStatus(
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder builderForValue) {
        if (statusBuilder_ == null) {
          status_ = builderForValue.build();
          onChanged();
        } else {
          statusBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder mergeStatus(clarifai2.internal.grpc.api.status.StatusOuterClass.Status value) {
        if (statusBuilder_ == null) {
          if (status_ != null) {
            status_ =
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.newBuilder(status_).mergeFrom(value).buildPartial();
          } else {
            status_ = value;
          }
          onChanged();
        } else {
          statusBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public Builder clearStatus() {
        if (statusBuilder_ == null) {
          status_ = null;
          onChanged();
        } else {
          status_ = null;
          statusBuilder_ = null;
        }

        return this;
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder getStatusBuilder() {
        
        onChanged();
        return getStatusFieldBuilder().getBuilder();
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      public clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder getStatusOrBuilder() {
        if (statusBuilder_ != null) {
          return statusBuilder_.getMessageOrBuilder();
        } else {
          return status_ == null ?
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status.getDefaultInstance() : status_;
        }
      }
      /**
       * .clarifai.api.status.Status status = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder> 
          getStatusFieldBuilder() {
        if (statusBuilder_ == null) {
          statusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              clarifai2.internal.grpc.api.status.StatusOuterClass.Status, clarifai2.internal.grpc.api.status.StatusOuterClass.Status.Builder, clarifai2.internal.grpc.api.status.StatusOuterClass.StatusOrBuilder>(
                  getStatus(),
                  getParentForChildren(),
                  isClean());
          status_ = null;
        }
        return statusBuilder_;
      }

      private java.util.List conceptCounts_ =
        java.util.Collections.emptyList();
      private void ensureConceptCountsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          conceptCounts_ = new java.util.ArrayList(conceptCounts_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder> conceptCountsBuilder_;

      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List getConceptCountsList() {
        if (conceptCountsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(conceptCounts_);
        } else {
          return conceptCountsBuilder_.getMessageList();
        }
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public int getConceptCountsCount() {
        if (conceptCountsBuilder_ == null) {
          return conceptCounts_.size();
        } else {
          return conceptCountsBuilder_.getCount();
        }
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount getConceptCounts(int index) {
        if (conceptCountsBuilder_ == null) {
          return conceptCounts_.get(index);
        } else {
          return conceptCountsBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder setConceptCounts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount value) {
        if (conceptCountsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptCountsIsMutable();
          conceptCounts_.set(index, value);
          onChanged();
        } else {
          conceptCountsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder setConceptCounts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder builderForValue) {
        if (conceptCountsBuilder_ == null) {
          ensureConceptCountsIsMutable();
          conceptCounts_.set(index, builderForValue.build());
          onChanged();
        } else {
          conceptCountsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConceptCounts(clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount value) {
        if (conceptCountsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptCountsIsMutable();
          conceptCounts_.add(value);
          onChanged();
        } else {
          conceptCountsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConceptCounts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount value) {
        if (conceptCountsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConceptCountsIsMutable();
          conceptCounts_.add(index, value);
          onChanged();
        } else {
          conceptCountsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConceptCounts(
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder builderForValue) {
        if (conceptCountsBuilder_ == null) {
          ensureConceptCountsIsMutable();
          conceptCounts_.add(builderForValue.build());
          onChanged();
        } else {
          conceptCountsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addConceptCounts(
          int index, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder builderForValue) {
        if (conceptCountsBuilder_ == null) {
          ensureConceptCountsIsMutable();
          conceptCounts_.add(index, builderForValue.build());
          onChanged();
        } else {
          conceptCountsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder addAllConceptCounts(
          java.lang.Iterable values) {
        if (conceptCountsBuilder_ == null) {
          ensureConceptCountsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, conceptCounts_);
          onChanged();
        } else {
          conceptCountsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder clearConceptCounts() {
        if (conceptCountsBuilder_ == null) {
          conceptCounts_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          conceptCountsBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public Builder removeConceptCounts(int index) {
        if (conceptCountsBuilder_ == null) {
          ensureConceptCountsIsMutable();
          conceptCounts_.remove(index);
          onChanged();
        } else {
          conceptCountsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder getConceptCountsBuilder(
          int index) {
        return getConceptCountsFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder getConceptCountsOrBuilder(
          int index) {
        if (conceptCountsBuilder_ == null) {
          return conceptCounts_.get(index);  } else {
          return conceptCountsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List 
           getConceptCountsOrBuilderList() {
        if (conceptCountsBuilder_ != null) {
          return conceptCountsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(conceptCounts_);
        }
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder addConceptCountsBuilder() {
        return getConceptCountsFieldBuilder().addBuilder(
            clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder addConceptCountsBuilder(
          int index) {
        return getConceptCountsFieldBuilder().addBuilder(
            index, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.getDefaultInstance());
      }
      /**
       * repeated .clarifai.api.ConceptCount concept_counts = 2 [(.clarifai.api.utils.cl_show_if_empty) = true];
       */
      public java.util.List 
           getConceptCountsBuilderList() {
        return getConceptCountsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder> 
          getConceptCountsFieldBuilder() {
        if (conceptCountsBuilder_ == null) {
          conceptCountsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCount.Builder, clarifai2.internal.grpc.api.ConceptOuterClass.ConceptCountOrBuilder>(
                  conceptCounts_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          conceptCounts_ = null;
        }
        return conceptCountsBuilder_;
      }
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:clarifai.api.MultiConceptCountResponse)
    }

    // @@protoc_insertion_point(class_scope:clarifai.api.MultiConceptCountResponse)
    private static final clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse();
    }

    public static clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      public MultiConceptCountResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new MultiConceptCountResponse(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    public clarifai2.internal.grpc.api.ConceptOuterClass.MultiConceptCountResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_Concept_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_Concept_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_ConceptCount_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_ConceptCount_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_ConceptTypeCount_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_ConceptTypeCount_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_GetConceptRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_GetConceptRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_ListConceptsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_ListConceptsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_PostConceptsSearchesRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_ConceptQuery_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_ConceptQuery_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_PostConceptsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_PostConceptsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_PatchConceptsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_PatchConceptsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_GetConceptCountsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_GetConceptCountsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_SingleConceptResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_SingleConceptResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_MultiConceptResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_MultiConceptResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clarifai_api_MultiConceptCountResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clarifai_api_MultiConceptCountResponse_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n proto/clarifai/api/concept.proto\022\014clar" +
      "ifai.api\032\037proto/clarifai/api/common.prot" +
      "o\032&proto/clarifai/api/status/status.prot" +
      "o\032)proto/clarifai/api/utils/extensions.p" +
      "roto\0320proto/clarifai/utils/pagination/pa" +
      "gination.proto\032\037google/protobuf/timestam" +
      "p.proto\"\245\001\n\007Concept\022\n\n\002id\030\001 \001(\t\022\014\n\004name\030" +
      "\002 \001(\t\022\032\n\005value\030\003 \001(\002B\013\325\265\030\000\000\200?\200\265\030\001\022.\n\ncre" +
      "ated_at\030\004 \001(\0132\032.google.protobuf.Timestam" +
      "p\022\020\n\010language\030\005 \001(\t\022\016\n\006app_id\030\006 \001(\t\022\022\n\nd" +
      "efinition\030\007 \001(\t\"d\n\014ConceptCount\022\n\n\002id\030\001 " +
      "\001(\t\022\014\n\004name\030\002 \001(\t\022:\n\022concept_type_count\030" +
      "\003 \001(\0132\036.clarifai.api.ConceptTypeCount\"6\n" +
      "\020ConceptTypeCount\022\020\n\010positive\030\001 \001(\r\022\020\n\010n" +
      "egative\030\002 \001(\r\"X\n\021GetConceptRequest\022/\n\013us" +
      "er_app_id\030\001 \001(\0132\032.clarifai.api.UserAppID" +
      "Set\022\022\n\nconcept_id\030\002 \001(\t\"f\n\023ListConceptsR" +
      "equest\022/\n\013user_app_id\030\001 \001(\0132\032.clarifai.a" +
      "pi.UserAppIDSet\022\014\n\004page\030\002 \001(\r\022\020\n\010per_pag" +
      "e\030\003 \001(\r\"\257\001\n\033PostConceptsSearchesRequest\022" +
      "/\n\013user_app_id\030\001 \001(\0132\032.clarifai.api.User" +
      "AppIDSet\0221\n\rconcept_query\030\002 \001(\0132\032.clarif" +
      "ai.api.ConceptQuery\022,\n\npagination\030\003 \001(\0132" +
      "\030.clarifai.api.Pagination\".\n\014ConceptQuer" +
      "y\022\014\n\004name\030\001 \001(\t\022\020\n\010language\030\002 \001(\t\"o\n\023Pos" +
      "tConceptsRequest\022/\n\013user_app_id\030\001 \001(\0132\032." +
      "clarifai.api.UserAppIDSet\022\'\n\010concepts\030\002 " +
      "\003(\0132\025.clarifai.api.Concept\"\200\001\n\024PatchConc" +
      "eptsRequest\022/\n\013user_app_id\030\001 \001(\0132\032.clari" +
      "fai.api.UserAppIDSet\022\'\n\010concepts\030\002 \003(\0132\025" +
      ".clarifai.api.Concept\022\016\n\006action\030\003 \001(\t\"j\n" +
      "\027GetConceptCountsRequest\022/\n\013user_app_id\030" +
      "\001 \001(\0132\032.clarifai.api.UserAppIDSet\022\014\n\004pag" +
      "e\030\002 \001(\r\022\020\n\010per_page\030\003 \001(\r\"l\n\025SingleConce" +
      "ptResponse\022+\n\006status\030\001 \001(\0132\033.clarifai.ap" +
      "i.status.Status\022&\n\007concept\030\002 \001(\0132\025.clari" +
      "fai.api.Concept\"r\n\024MultiConceptResponse\022" +
      "+\n\006status\030\001 \001(\0132\033.clarifai.api.status.St" +
      "atus\022-\n\010concepts\030\002 \003(\0132\025.clarifai.api.Co" +
      "nceptB\004\200\265\030\001\"\202\001\n\031MultiConceptCountRespons" +
      "e\022+\n\006status\030\001 \001(\0132\033.clarifai.api.status." +
      "Status\0228\n\016concept_counts\030\002 \003(\0132\032.clarifa" +
      "i.api.ConceptCountB\004\200\265\030\001BA\n\033clarifai2.in" +
      "ternal.grpc.apiZ\003api\242\002\004CAIP\302\002\001_\312\002\021Clarif" +
      "ai\\Internalb\006proto3"
    };
    com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
          public com.google.protobuf.ExtensionRegistry assignDescriptors(
              com.google.protobuf.Descriptors.FileDescriptor root) {
            descriptor = root;
            return null;
          }
        };
    com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          clarifai2.internal.grpc.api.Common.getDescriptor(),
          clarifai2.internal.grpc.api.status.StatusOuterClass.getDescriptor(),
          clarifai2.internal.grpc.api.utils.Extensions.getDescriptor(),
          clarifai2.internal.grpc.api.PaginationOuterClass.getDescriptor(),
          com.google.protobuf.TimestampProto.getDescriptor(),
        }, assigner);
    internal_static_clarifai_api_Concept_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_clarifai_api_Concept_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_Concept_descriptor,
        new java.lang.String[] { "Id", "Name", "Value", "CreatedAt", "Language", "AppId", "Definition", });
    internal_static_clarifai_api_ConceptCount_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_clarifai_api_ConceptCount_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_ConceptCount_descriptor,
        new java.lang.String[] { "Id", "Name", "ConceptTypeCount", });
    internal_static_clarifai_api_ConceptTypeCount_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_clarifai_api_ConceptTypeCount_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_ConceptTypeCount_descriptor,
        new java.lang.String[] { "Positive", "Negative", });
    internal_static_clarifai_api_GetConceptRequest_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_clarifai_api_GetConceptRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_GetConceptRequest_descriptor,
        new java.lang.String[] { "UserAppId", "ConceptId", });
    internal_static_clarifai_api_ListConceptsRequest_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_clarifai_api_ListConceptsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_ListConceptsRequest_descriptor,
        new java.lang.String[] { "UserAppId", "Page", "PerPage", });
    internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_clarifai_api_PostConceptsSearchesRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_PostConceptsSearchesRequest_descriptor,
        new java.lang.String[] { "UserAppId", "ConceptQuery", "Pagination", });
    internal_static_clarifai_api_ConceptQuery_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_clarifai_api_ConceptQuery_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_ConceptQuery_descriptor,
        new java.lang.String[] { "Name", "Language", });
    internal_static_clarifai_api_PostConceptsRequest_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_clarifai_api_PostConceptsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_PostConceptsRequest_descriptor,
        new java.lang.String[] { "UserAppId", "Concepts", });
    internal_static_clarifai_api_PatchConceptsRequest_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_clarifai_api_PatchConceptsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_PatchConceptsRequest_descriptor,
        new java.lang.String[] { "UserAppId", "Concepts", "Action", });
    internal_static_clarifai_api_GetConceptCountsRequest_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_clarifai_api_GetConceptCountsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_GetConceptCountsRequest_descriptor,
        new java.lang.String[] { "UserAppId", "Page", "PerPage", });
    internal_static_clarifai_api_SingleConceptResponse_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_clarifai_api_SingleConceptResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_SingleConceptResponse_descriptor,
        new java.lang.String[] { "Status", "Concept", });
    internal_static_clarifai_api_MultiConceptResponse_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_clarifai_api_MultiConceptResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_MultiConceptResponse_descriptor,
        new java.lang.String[] { "Status", "Concepts", });
    internal_static_clarifai_api_MultiConceptCountResponse_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_clarifai_api_MultiConceptCountResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clarifai_api_MultiConceptCountResponse_descriptor,
        new java.lang.String[] { "Status", "ConceptCounts", });
    com.google.protobuf.ExtensionRegistry registry =
        com.google.protobuf.ExtensionRegistry.newInstance();
    registry.add(clarifai2.internal.grpc.api.utils.Extensions.clDefaultFloat);
    registry.add(clarifai2.internal.grpc.api.utils.Extensions.clShowIfEmpty);
    com.google.protobuf.Descriptors.FileDescriptor
        .internalUpdateFileDescriptor(descriptor, registry);
    clarifai2.internal.grpc.api.Common.getDescriptor();
    clarifai2.internal.grpc.api.status.StatusOuterClass.getDescriptor();
    clarifai2.internal.grpc.api.utils.Extensions.getDescriptor();
    clarifai2.internal.grpc.api.PaginationOuterClass.getDescriptor();
    com.google.protobuf.TimestampProto.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy