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

kafka.entity.changelog.schema.Topic Maven / Gradle / Ivy

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: src/main/proto/Topic.proto

package kafka.entity.changelog.schema;

public final class Topic {
  private Topic() {}
  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 CommandOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.Command)
      com.google.protobuf.MessageOrBuilder {

    /**
     * int64 timestamp = 1;
     */
    long getTimestamp();

    /**
     * string username = 2;
     */
    java.lang.String getUsername();
    /**
     * string username = 2;
     */
    com.google.protobuf.ByteString
        getUsernameBytes();

    /**
     * string source = 3;
     */
    java.lang.String getSource();
    /**
     * string source = 3;
     */
    com.google.protobuf.ByteString
        getSourceBytes();

    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    boolean hasTopicsFound();
    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    kafka.entity.changelog.schema.Topic.TopicsFound getTopicsFound();
    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder getTopicsFoundOrBuilder();

    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    boolean hasCreateTopic();
    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    kafka.entity.changelog.schema.Topic.CreateTopic getCreateTopic();
    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder getCreateTopicOrBuilder();

    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    boolean hasDeleteTopic();
    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    kafka.entity.changelog.schema.Topic.DeleteTopic getDeleteTopic();
    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder getDeleteTopicOrBuilder();

    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    boolean hasApplyTopicConfig();
    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    kafka.entity.changelog.schema.Topic.ApplyTopicConfig getApplyTopicConfig();
    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder getApplyTopicConfigOrBuilder();

    public kafka.entity.changelog.schema.Topic.Command.CommandCase getCommandCase();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.Command}
   */
  public  static final class Command extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.Command)
      CommandOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Command.newBuilder() to construct.
    private Command(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Command() {
      username_ = "";
      source_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Command();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Command(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 8: {

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

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

              source_ = s;
              break;
            }
            case 34: {
              kafka.entity.changelog.schema.Topic.TopicsFound.Builder subBuilder = null;
              if (commandCase_ == 4) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.TopicsFound) command_).toBuilder();
              }
              command_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.TopicsFound.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.TopicsFound) command_);
                command_ = subBuilder.buildPartial();
              }
              commandCase_ = 4;
              break;
            }
            case 42: {
              kafka.entity.changelog.schema.Topic.CreateTopic.Builder subBuilder = null;
              if (commandCase_ == 5) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.CreateTopic) command_).toBuilder();
              }
              command_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.CreateTopic.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.CreateTopic) command_);
                command_ = subBuilder.buildPartial();
              }
              commandCase_ = 5;
              break;
            }
            case 50: {
              kafka.entity.changelog.schema.Topic.DeleteTopic.Builder subBuilder = null;
              if (commandCase_ == 6) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.DeleteTopic) command_).toBuilder();
              }
              command_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.DeleteTopic.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.DeleteTopic) command_);
                command_ = subBuilder.buildPartial();
              }
              commandCase_ = 6;
              break;
            }
            case 58: {
              kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder subBuilder = null;
              if (commandCase_ == 7) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_).toBuilder();
              }
              command_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.ApplyTopicConfig.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_);
                command_ = subBuilder.buildPartial();
              }
              commandCase_ = 7;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Command_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Command_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.Command.class, kafka.entity.changelog.schema.Topic.Command.Builder.class);
    }

    private int commandCase_ = 0;
    private java.lang.Object command_;
    public enum CommandCase
        implements com.google.protobuf.Internal.EnumLite {
      TOPICSFOUND(4),
      CREATETOPIC(5),
      DELETETOPIC(6),
      APPLYTOPICCONFIG(7),
      COMMAND_NOT_SET(0);
      private final int value;
      private CommandCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static CommandCase valueOf(int value) {
        return forNumber(value);
      }

      public static CommandCase forNumber(int value) {
        switch (value) {
          case 4: return TOPICSFOUND;
          case 5: return CREATETOPIC;
          case 6: return DELETETOPIC;
          case 7: return APPLYTOPICCONFIG;
          case 0: return COMMAND_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public CommandCase
    getCommandCase() {
      return CommandCase.forNumber(
          commandCase_);
    }

    public static final int TIMESTAMP_FIELD_NUMBER = 1;
    private long timestamp_;
    /**
     * int64 timestamp = 1;
     */
    public long getTimestamp() {
      return timestamp_;
    }

    public static final int USERNAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object username_;
    /**
     * string username = 2;
     */
    public java.lang.String getUsername() {
      java.lang.Object ref = username_;
      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();
        username_ = s;
        return s;
      }
    }
    /**
     * string username = 2;
     */
    public com.google.protobuf.ByteString
        getUsernameBytes() {
      java.lang.Object ref = username_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        username_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SOURCE_FIELD_NUMBER = 3;
    private volatile java.lang.Object source_;
    /**
     * string source = 3;
     */
    public java.lang.String getSource() {
      java.lang.Object ref = source_;
      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();
        source_ = s;
        return s;
      }
    }
    /**
     * string source = 3;
     */
    public com.google.protobuf.ByteString
        getSourceBytes() {
      java.lang.Object ref = source_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        source_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TOPICSFOUND_FIELD_NUMBER = 4;
    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    public boolean hasTopicsFound() {
      return commandCase_ == 4;
    }
    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    public kafka.entity.changelog.schema.Topic.TopicsFound getTopicsFound() {
      if (commandCase_ == 4) {
         return (kafka.entity.changelog.schema.Topic.TopicsFound) command_;
      }
      return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.TopicsFound topicsFound = 4;
     */
    public kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder getTopicsFoundOrBuilder() {
      if (commandCase_ == 4) {
         return (kafka.entity.changelog.schema.Topic.TopicsFound) command_;
      }
      return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
    }

    public static final int CREATETOPIC_FIELD_NUMBER = 5;
    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    public boolean hasCreateTopic() {
      return commandCase_ == 5;
    }
    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    public kafka.entity.changelog.schema.Topic.CreateTopic getCreateTopic() {
      if (commandCase_ == 5) {
         return (kafka.entity.changelog.schema.Topic.CreateTopic) command_;
      }
      return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.CreateTopic createTopic = 5;
     */
    public kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder getCreateTopicOrBuilder() {
      if (commandCase_ == 5) {
         return (kafka.entity.changelog.schema.Topic.CreateTopic) command_;
      }
      return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
    }

    public static final int DELETETOPIC_FIELD_NUMBER = 6;
    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    public boolean hasDeleteTopic() {
      return commandCase_ == 6;
    }
    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    public kafka.entity.changelog.schema.Topic.DeleteTopic getDeleteTopic() {
      if (commandCase_ == 6) {
         return (kafka.entity.changelog.schema.Topic.DeleteTopic) command_;
      }
      return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
     */
    public kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder getDeleteTopicOrBuilder() {
      if (commandCase_ == 6) {
         return (kafka.entity.changelog.schema.Topic.DeleteTopic) command_;
      }
      return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
    }

    public static final int APPLYTOPICCONFIG_FIELD_NUMBER = 7;
    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    public boolean hasApplyTopicConfig() {
      return commandCase_ == 7;
    }
    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    public kafka.entity.changelog.schema.Topic.ApplyTopicConfig getApplyTopicConfig() {
      if (commandCase_ == 7) {
         return (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_;
      }
      return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
     */
    public kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder getApplyTopicConfigOrBuilder() {
      if (commandCase_ == 7) {
         return (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_;
      }
      return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (timestamp_ != 0L) {
        output.writeInt64(1, timestamp_);
      }
      if (!getUsernameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, source_);
      }
      if (commandCase_ == 4) {
        output.writeMessage(4, (kafka.entity.changelog.schema.Topic.TopicsFound) command_);
      }
      if (commandCase_ == 5) {
        output.writeMessage(5, (kafka.entity.changelog.schema.Topic.CreateTopic) command_);
      }
      if (commandCase_ == 6) {
        output.writeMessage(6, (kafka.entity.changelog.schema.Topic.DeleteTopic) command_);
      }
      if (commandCase_ == 7) {
        output.writeMessage(7, (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (timestamp_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, timestamp_);
      }
      if (!getUsernameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, source_);
      }
      if (commandCase_ == 4) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, (kafka.entity.changelog.schema.Topic.TopicsFound) command_);
      }
      if (commandCase_ == 5) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, (kafka.entity.changelog.schema.Topic.CreateTopic) command_);
      }
      if (commandCase_ == 6) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, (kafka.entity.changelog.schema.Topic.DeleteTopic) command_);
      }
      if (commandCase_ == 7) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_);
      }
      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 kafka.entity.changelog.schema.Topic.Command)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.Command other = (kafka.entity.changelog.schema.Topic.Command) obj;

      if (getTimestamp()
          != other.getTimestamp()) return false;
      if (!getUsername()
          .equals(other.getUsername())) return false;
      if (!getSource()
          .equals(other.getSource())) return false;
      if (!getCommandCase().equals(other.getCommandCase())) return false;
      switch (commandCase_) {
        case 4:
          if (!getTopicsFound()
              .equals(other.getTopicsFound())) return false;
          break;
        case 5:
          if (!getCreateTopic()
              .equals(other.getCreateTopic())) return false;
          break;
        case 6:
          if (!getDeleteTopic()
              .equals(other.getDeleteTopic())) return false;
          break;
        case 7:
          if (!getApplyTopicConfig()
              .equals(other.getApplyTopicConfig())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getTimestamp());
      hash = (37 * hash) + USERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getUsername().hashCode();
      hash = (37 * hash) + SOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getSource().hashCode();
      switch (commandCase_) {
        case 4:
          hash = (37 * hash) + TOPICSFOUND_FIELD_NUMBER;
          hash = (53 * hash) + getTopicsFound().hashCode();
          break;
        case 5:
          hash = (37 * hash) + CREATETOPIC_FIELD_NUMBER;
          hash = (53 * hash) + getCreateTopic().hashCode();
          break;
        case 6:
          hash = (37 * hash) + DELETETOPIC_FIELD_NUMBER;
          hash = (53 * hash) + getDeleteTopic().hashCode();
          break;
        case 7:
          hash = (37 * hash) + APPLYTOPICCONFIG_FIELD_NUMBER;
          hash = (53 * hash) + getApplyTopicConfig().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Command 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 kafka.entity.changelog.schema.Topic.Command parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Command 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 kafka.entity.changelog.schema.Topic.Command parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Command parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.Command prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.Command}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.Command)
        kafka.entity.changelog.schema.Topic.CommandOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Command_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Command_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.Command.class, kafka.entity.changelog.schema.Topic.Command.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.Command.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        timestamp_ = 0L;

        username_ = "";

        source_ = "";

        commandCase_ = 0;
        command_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Command_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Command getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.Command.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Command build() {
        kafka.entity.changelog.schema.Topic.Command result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Command buildPartial() {
        kafka.entity.changelog.schema.Topic.Command result = new kafka.entity.changelog.schema.Topic.Command(this);
        result.timestamp_ = timestamp_;
        result.username_ = username_;
        result.source_ = source_;
        if (commandCase_ == 4) {
          if (topicsFoundBuilder_ == null) {
            result.command_ = command_;
          } else {
            result.command_ = topicsFoundBuilder_.build();
          }
        }
        if (commandCase_ == 5) {
          if (createTopicBuilder_ == null) {
            result.command_ = command_;
          } else {
            result.command_ = createTopicBuilder_.build();
          }
        }
        if (commandCase_ == 6) {
          if (deleteTopicBuilder_ == null) {
            result.command_ = command_;
          } else {
            result.command_ = deleteTopicBuilder_.build();
          }
        }
        if (commandCase_ == 7) {
          if (applyTopicConfigBuilder_ == null) {
            result.command_ = command_;
          } else {
            result.command_ = applyTopicConfigBuilder_.build();
          }
        }
        result.commandCase_ = commandCase_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.Command) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.Command)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.Command other) {
        if (other == kafka.entity.changelog.schema.Topic.Command.getDefaultInstance()) return this;
        if (other.getTimestamp() != 0L) {
          setTimestamp(other.getTimestamp());
        }
        if (!other.getUsername().isEmpty()) {
          username_ = other.username_;
          onChanged();
        }
        if (!other.getSource().isEmpty()) {
          source_ = other.source_;
          onChanged();
        }
        switch (other.getCommandCase()) {
          case TOPICSFOUND: {
            mergeTopicsFound(other.getTopicsFound());
            break;
          }
          case CREATETOPIC: {
            mergeCreateTopic(other.getCreateTopic());
            break;
          }
          case DELETETOPIC: {
            mergeDeleteTopic(other.getDeleteTopic());
            break;
          }
          case APPLYTOPICCONFIG: {
            mergeApplyTopicConfig(other.getApplyTopicConfig());
            break;
          }
          case COMMAND_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.Command parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.Command) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int commandCase_ = 0;
      private java.lang.Object command_;
      public CommandCase
          getCommandCase() {
        return CommandCase.forNumber(
            commandCase_);
      }

      public Builder clearCommand() {
        commandCase_ = 0;
        command_ = null;
        onChanged();
        return this;
      }


      private long timestamp_ ;
      /**
       * int64 timestamp = 1;
       */
      public long getTimestamp() {
        return timestamp_;
      }
      /**
       * int64 timestamp = 1;
       */
      public Builder setTimestamp(long value) {
        
        timestamp_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 timestamp = 1;
       */
      public Builder clearTimestamp() {
        
        timestamp_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object username_ = "";
      /**
       * string username = 2;
       */
      public java.lang.String getUsername() {
        java.lang.Object ref = username_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          username_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string username = 2;
       */
      public com.google.protobuf.ByteString
          getUsernameBytes() {
        java.lang.Object ref = username_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          username_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string username = 2;
       */
      public Builder setUsername(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        username_ = value;
        onChanged();
        return this;
      }
      /**
       * string username = 2;
       */
      public Builder clearUsername() {
        
        username_ = getDefaultInstance().getUsername();
        onChanged();
        return this;
      }
      /**
       * string username = 2;
       */
      public Builder setUsernameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        username_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object source_ = "";
      /**
       * string source = 3;
       */
      public java.lang.String getSource() {
        java.lang.Object ref = source_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          source_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string source = 3;
       */
      public com.google.protobuf.ByteString
          getSourceBytes() {
        java.lang.Object ref = source_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          source_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string source = 3;
       */
      public Builder setSource(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        source_ = value;
        onChanged();
        return this;
      }
      /**
       * string source = 3;
       */
      public Builder clearSource() {
        
        source_ = getDefaultInstance().getSource();
        onChanged();
        return this;
      }
      /**
       * string source = 3;
       */
      public Builder setSourceBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        source_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicsFound, kafka.entity.changelog.schema.Topic.TopicsFound.Builder, kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder> topicsFoundBuilder_;
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public boolean hasTopicsFound() {
        return commandCase_ == 4;
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public kafka.entity.changelog.schema.Topic.TopicsFound getTopicsFound() {
        if (topicsFoundBuilder_ == null) {
          if (commandCase_ == 4) {
            return (kafka.entity.changelog.schema.Topic.TopicsFound) command_;
          }
          return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
        } else {
          if (commandCase_ == 4) {
            return topicsFoundBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public Builder setTopicsFound(kafka.entity.changelog.schema.Topic.TopicsFound value) {
        if (topicsFoundBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          command_ = value;
          onChanged();
        } else {
          topicsFoundBuilder_.setMessage(value);
        }
        commandCase_ = 4;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public Builder setTopicsFound(
          kafka.entity.changelog.schema.Topic.TopicsFound.Builder builderForValue) {
        if (topicsFoundBuilder_ == null) {
          command_ = builderForValue.build();
          onChanged();
        } else {
          topicsFoundBuilder_.setMessage(builderForValue.build());
        }
        commandCase_ = 4;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public Builder mergeTopicsFound(kafka.entity.changelog.schema.Topic.TopicsFound value) {
        if (topicsFoundBuilder_ == null) {
          if (commandCase_ == 4 &&
              command_ != kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance()) {
            command_ = kafka.entity.changelog.schema.Topic.TopicsFound.newBuilder((kafka.entity.changelog.schema.Topic.TopicsFound) command_)
                .mergeFrom(value).buildPartial();
          } else {
            command_ = value;
          }
          onChanged();
        } else {
          if (commandCase_ == 4) {
            topicsFoundBuilder_.mergeFrom(value);
          }
          topicsFoundBuilder_.setMessage(value);
        }
        commandCase_ = 4;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public Builder clearTopicsFound() {
        if (topicsFoundBuilder_ == null) {
          if (commandCase_ == 4) {
            commandCase_ = 0;
            command_ = null;
            onChanged();
          }
        } else {
          if (commandCase_ == 4) {
            commandCase_ = 0;
            command_ = null;
          }
          topicsFoundBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public kafka.entity.changelog.schema.Topic.TopicsFound.Builder getTopicsFoundBuilder() {
        return getTopicsFoundFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      public kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder getTopicsFoundOrBuilder() {
        if ((commandCase_ == 4) && (topicsFoundBuilder_ != null)) {
          return topicsFoundBuilder_.getMessageOrBuilder();
        } else {
          if (commandCase_ == 4) {
            return (kafka.entity.changelog.schema.Topic.TopicsFound) command_;
          }
          return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicsFound topicsFound = 4;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicsFound, kafka.entity.changelog.schema.Topic.TopicsFound.Builder, kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder> 
          getTopicsFoundFieldBuilder() {
        if (topicsFoundBuilder_ == null) {
          if (!(commandCase_ == 4)) {
            command_ = kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
          }
          topicsFoundBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.TopicsFound, kafka.entity.changelog.schema.Topic.TopicsFound.Builder, kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.TopicsFound) command_,
                  getParentForChildren(),
                  isClean());
          command_ = null;
        }
        commandCase_ = 4;
        onChanged();;
        return topicsFoundBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.CreateTopic, kafka.entity.changelog.schema.Topic.CreateTopic.Builder, kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder> createTopicBuilder_;
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public boolean hasCreateTopic() {
        return commandCase_ == 5;
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreateTopic getCreateTopic() {
        if (createTopicBuilder_ == null) {
          if (commandCase_ == 5) {
            return (kafka.entity.changelog.schema.Topic.CreateTopic) command_;
          }
          return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
        } else {
          if (commandCase_ == 5) {
            return createTopicBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public Builder setCreateTopic(kafka.entity.changelog.schema.Topic.CreateTopic value) {
        if (createTopicBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          command_ = value;
          onChanged();
        } else {
          createTopicBuilder_.setMessage(value);
        }
        commandCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public Builder setCreateTopic(
          kafka.entity.changelog.schema.Topic.CreateTopic.Builder builderForValue) {
        if (createTopicBuilder_ == null) {
          command_ = builderForValue.build();
          onChanged();
        } else {
          createTopicBuilder_.setMessage(builderForValue.build());
        }
        commandCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public Builder mergeCreateTopic(kafka.entity.changelog.schema.Topic.CreateTopic value) {
        if (createTopicBuilder_ == null) {
          if (commandCase_ == 5 &&
              command_ != kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance()) {
            command_ = kafka.entity.changelog.schema.Topic.CreateTopic.newBuilder((kafka.entity.changelog.schema.Topic.CreateTopic) command_)
                .mergeFrom(value).buildPartial();
          } else {
            command_ = value;
          }
          onChanged();
        } else {
          if (commandCase_ == 5) {
            createTopicBuilder_.mergeFrom(value);
          }
          createTopicBuilder_.setMessage(value);
        }
        commandCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public Builder clearCreateTopic() {
        if (createTopicBuilder_ == null) {
          if (commandCase_ == 5) {
            commandCase_ = 0;
            command_ = null;
            onChanged();
          }
        } else {
          if (commandCase_ == 5) {
            commandCase_ = 0;
            command_ = null;
          }
          createTopicBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreateTopic.Builder getCreateTopicBuilder() {
        return getCreateTopicFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder getCreateTopicOrBuilder() {
        if ((commandCase_ == 5) && (createTopicBuilder_ != null)) {
          return createTopicBuilder_.getMessageOrBuilder();
        } else {
          if (commandCase_ == 5) {
            return (kafka.entity.changelog.schema.Topic.CreateTopic) command_;
          }
          return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.CreateTopic createTopic = 5;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.CreateTopic, kafka.entity.changelog.schema.Topic.CreateTopic.Builder, kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder> 
          getCreateTopicFieldBuilder() {
        if (createTopicBuilder_ == null) {
          if (!(commandCase_ == 5)) {
            command_ = kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
          }
          createTopicBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.CreateTopic, kafka.entity.changelog.schema.Topic.CreateTopic.Builder, kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.CreateTopic) command_,
                  getParentForChildren(),
                  isClean());
          command_ = null;
        }
        commandCase_ = 5;
        onChanged();;
        return createTopicBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.DeleteTopic, kafka.entity.changelog.schema.Topic.DeleteTopic.Builder, kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder> deleteTopicBuilder_;
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public boolean hasDeleteTopic() {
        return commandCase_ == 6;
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public kafka.entity.changelog.schema.Topic.DeleteTopic getDeleteTopic() {
        if (deleteTopicBuilder_ == null) {
          if (commandCase_ == 6) {
            return (kafka.entity.changelog.schema.Topic.DeleteTopic) command_;
          }
          return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
        } else {
          if (commandCase_ == 6) {
            return deleteTopicBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public Builder setDeleteTopic(kafka.entity.changelog.schema.Topic.DeleteTopic value) {
        if (deleteTopicBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          command_ = value;
          onChanged();
        } else {
          deleteTopicBuilder_.setMessage(value);
        }
        commandCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public Builder setDeleteTopic(
          kafka.entity.changelog.schema.Topic.DeleteTopic.Builder builderForValue) {
        if (deleteTopicBuilder_ == null) {
          command_ = builderForValue.build();
          onChanged();
        } else {
          deleteTopicBuilder_.setMessage(builderForValue.build());
        }
        commandCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public Builder mergeDeleteTopic(kafka.entity.changelog.schema.Topic.DeleteTopic value) {
        if (deleteTopicBuilder_ == null) {
          if (commandCase_ == 6 &&
              command_ != kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance()) {
            command_ = kafka.entity.changelog.schema.Topic.DeleteTopic.newBuilder((kafka.entity.changelog.schema.Topic.DeleteTopic) command_)
                .mergeFrom(value).buildPartial();
          } else {
            command_ = value;
          }
          onChanged();
        } else {
          if (commandCase_ == 6) {
            deleteTopicBuilder_.mergeFrom(value);
          }
          deleteTopicBuilder_.setMessage(value);
        }
        commandCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public Builder clearDeleteTopic() {
        if (deleteTopicBuilder_ == null) {
          if (commandCase_ == 6) {
            commandCase_ = 0;
            command_ = null;
            onChanged();
          }
        } else {
          if (commandCase_ == 6) {
            commandCase_ = 0;
            command_ = null;
          }
          deleteTopicBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public kafka.entity.changelog.schema.Topic.DeleteTopic.Builder getDeleteTopicBuilder() {
        return getDeleteTopicFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      public kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder getDeleteTopicOrBuilder() {
        if ((commandCase_ == 6) && (deleteTopicBuilder_ != null)) {
          return deleteTopicBuilder_.getMessageOrBuilder();
        } else {
          if (commandCase_ == 6) {
            return (kafka.entity.changelog.schema.Topic.DeleteTopic) command_;
          }
          return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.DeleteTopic deleteTopic = 6;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.DeleteTopic, kafka.entity.changelog.schema.Topic.DeleteTopic.Builder, kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder> 
          getDeleteTopicFieldBuilder() {
        if (deleteTopicBuilder_ == null) {
          if (!(commandCase_ == 6)) {
            command_ = kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
          }
          deleteTopicBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.DeleteTopic, kafka.entity.changelog.schema.Topic.DeleteTopic.Builder, kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.DeleteTopic) command_,
                  getParentForChildren(),
                  isClean());
          command_ = null;
        }
        commandCase_ = 6;
        onChanged();;
        return deleteTopicBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ApplyTopicConfig, kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder, kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder> applyTopicConfigBuilder_;
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public boolean hasApplyTopicConfig() {
        return commandCase_ == 7;
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfig getApplyTopicConfig() {
        if (applyTopicConfigBuilder_ == null) {
          if (commandCase_ == 7) {
            return (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_;
          }
          return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
        } else {
          if (commandCase_ == 7) {
            return applyTopicConfigBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public Builder setApplyTopicConfig(kafka.entity.changelog.schema.Topic.ApplyTopicConfig value) {
        if (applyTopicConfigBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          command_ = value;
          onChanged();
        } else {
          applyTopicConfigBuilder_.setMessage(value);
        }
        commandCase_ = 7;
        return this;
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public Builder setApplyTopicConfig(
          kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder builderForValue) {
        if (applyTopicConfigBuilder_ == null) {
          command_ = builderForValue.build();
          onChanged();
        } else {
          applyTopicConfigBuilder_.setMessage(builderForValue.build());
        }
        commandCase_ = 7;
        return this;
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public Builder mergeApplyTopicConfig(kafka.entity.changelog.schema.Topic.ApplyTopicConfig value) {
        if (applyTopicConfigBuilder_ == null) {
          if (commandCase_ == 7 &&
              command_ != kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance()) {
            command_ = kafka.entity.changelog.schema.Topic.ApplyTopicConfig.newBuilder((kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_)
                .mergeFrom(value).buildPartial();
          } else {
            command_ = value;
          }
          onChanged();
        } else {
          if (commandCase_ == 7) {
            applyTopicConfigBuilder_.mergeFrom(value);
          }
          applyTopicConfigBuilder_.setMessage(value);
        }
        commandCase_ = 7;
        return this;
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public Builder clearApplyTopicConfig() {
        if (applyTopicConfigBuilder_ == null) {
          if (commandCase_ == 7) {
            commandCase_ = 0;
            command_ = null;
            onChanged();
          }
        } else {
          if (commandCase_ == 7) {
            commandCase_ = 0;
            command_ = null;
          }
          applyTopicConfigBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder getApplyTopicConfigBuilder() {
        return getApplyTopicConfigFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder getApplyTopicConfigOrBuilder() {
        if ((commandCase_ == 7) && (applyTopicConfigBuilder_ != null)) {
          return applyTopicConfigBuilder_.getMessageOrBuilder();
        } else {
          if (commandCase_ == 7) {
            return (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_;
          }
          return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ApplyTopicConfig applyTopicConfig = 7;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ApplyTopicConfig, kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder, kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder> 
          getApplyTopicConfigFieldBuilder() {
        if (applyTopicConfigBuilder_ == null) {
          if (!(commandCase_ == 7)) {
            command_ = kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
          }
          applyTopicConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.ApplyTopicConfig, kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder, kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) command_,
                  getParentForChildren(),
                  isClean());
          command_ = null;
        }
        commandCase_ = 7;
        onChanged();;
        return applyTopicConfigBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.Command)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.Command)
    private static final kafka.entity.changelog.schema.Topic.Command DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.Command();
    }

    public static kafka.entity.changelog.schema.Topic.Command getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.Command getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicsFoundOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicsFound)
      com.google.protobuf.MessageOrBuilder {

    /**
     * repeated string name = 1;
     */
    java.util.List
        getNameList();
    /**
     * repeated string name = 1;
     */
    int getNameCount();
    /**
     * repeated string name = 1;
     */
    java.lang.String getName(int index);
    /**
     * repeated string name = 1;
     */
    com.google.protobuf.ByteString
        getNameBytes(int index);
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicsFound}
   */
  public  static final class TopicsFound extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicsFound)
      TopicsFoundOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicsFound.newBuilder() to construct.
    private TopicsFound(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicsFound() {
      name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicsFound();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicsFound(
        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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                name_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              name_.add(s);
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          name_ = name_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicsFound_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicsFound_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicsFound.class, kafka.entity.changelog.schema.Topic.TopicsFound.Builder.class);
    }

    public static final int NAME_FIELD_NUMBER = 1;
    private com.google.protobuf.LazyStringList name_;
    /**
     * repeated string name = 1;
     */
    public com.google.protobuf.ProtocolStringList
        getNameList() {
      return name_;
    }
    /**
     * repeated string name = 1;
     */
    public int getNameCount() {
      return name_.size();
    }
    /**
     * repeated string name = 1;
     */
    public java.lang.String getName(int index) {
      return name_.get(index);
    }
    /**
     * repeated string name = 1;
     */
    public com.google.protobuf.ByteString
        getNameBytes(int index) {
      return name_.getByteString(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < name_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_.getRaw(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        for (int i = 0; i < name_.size(); i++) {
          dataSize += computeStringSizeNoTag(name_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getNameList().size();
      }
      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 kafka.entity.changelog.schema.Topic.TopicsFound)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicsFound other = (kafka.entity.changelog.schema.Topic.TopicsFound) obj;

      if (!getNameList()
          .equals(other.getNameList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

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

    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound 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 kafka.entity.changelog.schema.Topic.TopicsFound parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound 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 kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicsFound parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicsFound prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicsFound}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicsFound)
        kafka.entity.changelog.schema.Topic.TopicsFoundOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicsFound_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicsFound_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicsFound.class, kafka.entity.changelog.schema.Topic.TopicsFound.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicsFound.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicsFound_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicsFound getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicsFound build() {
        kafka.entity.changelog.schema.Topic.TopicsFound result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicsFound buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicsFound result = new kafka.entity.changelog.schema.Topic.TopicsFound(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) != 0)) {
          name_ = name_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.name_ = name_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicsFound) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicsFound)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicsFound other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicsFound.getDefaultInstance()) return this;
        if (!other.name_.isEmpty()) {
          if (name_.isEmpty()) {
            name_ = other.name_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureNameIsMutable();
            name_.addAll(other.name_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicsFound parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicsFound) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private com.google.protobuf.LazyStringList name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureNameIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          name_ = new com.google.protobuf.LazyStringArrayList(name_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated string name = 1;
       */
      public com.google.protobuf.ProtocolStringList
          getNameList() {
        return name_.getUnmodifiableView();
      }
      /**
       * repeated string name = 1;
       */
      public int getNameCount() {
        return name_.size();
      }
      /**
       * repeated string name = 1;
       */
      public java.lang.String getName(int index) {
        return name_.get(index);
      }
      /**
       * repeated string name = 1;
       */
      public com.google.protobuf.ByteString
          getNameBytes(int index) {
        return name_.getByteString(index);
      }
      /**
       * repeated string name = 1;
       */
      public Builder setName(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureNameIsMutable();
        name_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated string name = 1;
       */
      public Builder addName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureNameIsMutable();
        name_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated string name = 1;
       */
      public Builder addAllName(
          java.lang.Iterable values) {
        ensureNameIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, name_);
        onChanged();
        return this;
      }
      /**
       * repeated string name = 1;
       */
      public Builder clearName() {
        name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * repeated string name = 1;
       */
      public Builder addNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureNameIsMutable();
        name_.add(value);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicsFound)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicsFound)
    private static final kafka.entity.changelog.schema.Topic.TopicsFound DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicsFound();
    }

    public static kafka.entity.changelog.schema.Topic.TopicsFound getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicsFound getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface CreateTopicOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.CreateTopic)
      com.google.protobuf.MessageOrBuilder {

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

    /**
     * int32 partitions = 2;
     */
    int getPartitions();

    /**
     * int32 replicationFactor = 3;
     */
    int getReplicationFactor();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.CreateTopic}
   */
  public  static final class CreateTopic extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.CreateTopic)
      CreateTopicOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreateTopic.newBuilder() to construct.
    private CreateTopic(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private CreateTopic() {
      name_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreateTopic();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CreateTopic(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 16: {

              partitions_ = input.readInt32();
              break;
            }
            case 24: {

              replicationFactor_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreateTopic_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreateTopic_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.CreateTopic.class, kafka.entity.changelog.schema.Topic.CreateTopic.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 PARTITIONS_FIELD_NUMBER = 2;
    private int partitions_;
    /**
     * int32 partitions = 2;
     */
    public int getPartitions() {
      return partitions_;
    }

    public static final int REPLICATIONFACTOR_FIELD_NUMBER = 3;
    private int replicationFactor_;
    /**
     * int32 replicationFactor = 3;
     */
    public int getReplicationFactor() {
      return replicationFactor_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      if (partitions_ != 0) {
        output.writeInt32(2, partitions_);
      }
      if (replicationFactor_ != 0) {
        output.writeInt32(3, replicationFactor_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    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 (partitions_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, partitions_);
      }
      if (replicationFactor_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, replicationFactor_);
      }
      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 kafka.entity.changelog.schema.Topic.CreateTopic)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.CreateTopic other = (kafka.entity.changelog.schema.Topic.CreateTopic) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (getPartitions()
          != other.getPartitions()) return false;
      if (getReplicationFactor()
          != other.getReplicationFactor()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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) + PARTITIONS_FIELD_NUMBER;
      hash = (53 * hash) + getPartitions();
      hash = (37 * hash) + REPLICATIONFACTOR_FIELD_NUMBER;
      hash = (53 * hash) + getReplicationFactor();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic 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 kafka.entity.changelog.schema.Topic.CreateTopic parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic 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 kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreateTopic parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.CreateTopic prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.CreateTopic}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.CreateTopic)
        kafka.entity.changelog.schema.Topic.CreateTopicOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreateTopic_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreateTopic_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.CreateTopic.class, kafka.entity.changelog.schema.Topic.CreateTopic.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.CreateTopic.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        partitions_ = 0;

        replicationFactor_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreateTopic_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreateTopic getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreateTopic build() {
        kafka.entity.changelog.schema.Topic.CreateTopic result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreateTopic buildPartial() {
        kafka.entity.changelog.schema.Topic.CreateTopic result = new kafka.entity.changelog.schema.Topic.CreateTopic(this);
        result.name_ = name_;
        result.partitions_ = partitions_;
        result.replicationFactor_ = replicationFactor_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.CreateTopic) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.CreateTopic)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.CreateTopic other) {
        if (other == kafka.entity.changelog.schema.Topic.CreateTopic.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (other.getPartitions() != 0) {
          setPartitions(other.getPartitions());
        }
        if (other.getReplicationFactor() != 0) {
          setReplicationFactor(other.getReplicationFactor());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.CreateTopic parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.CreateTopic) 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 int partitions_ ;
      /**
       * int32 partitions = 2;
       */
      public int getPartitions() {
        return partitions_;
      }
      /**
       * int32 partitions = 2;
       */
      public Builder setPartitions(int value) {
        
        partitions_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 partitions = 2;
       */
      public Builder clearPartitions() {
        
        partitions_ = 0;
        onChanged();
        return this;
      }

      private int replicationFactor_ ;
      /**
       * int32 replicationFactor = 3;
       */
      public int getReplicationFactor() {
        return replicationFactor_;
      }
      /**
       * int32 replicationFactor = 3;
       */
      public Builder setReplicationFactor(int value) {
        
        replicationFactor_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 replicationFactor = 3;
       */
      public Builder clearReplicationFactor() {
        
        replicationFactor_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.CreateTopic)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.CreateTopic)
    private static final kafka.entity.changelog.schema.Topic.CreateTopic DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.CreateTopic();
    }

    public static kafka.entity.changelog.schema.Topic.CreateTopic getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.CreateTopic getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface DeleteTopicOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.DeleteTopic)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string name = 1;
     */
    java.lang.String getName();
    /**
     * string name = 1;
     */
    com.google.protobuf.ByteString
        getNameBytes();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.DeleteTopic}
   */
  public  static final class DeleteTopic extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.DeleteTopic)
      DeleteTopicOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeleteTopic.newBuilder() to construct.
    private DeleteTopic(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private DeleteTopic() {
      name_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeleteTopic();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeleteTopic(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_DeleteTopic_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_DeleteTopic_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.DeleteTopic.class, kafka.entity.changelog.schema.Topic.DeleteTopic.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;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

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

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      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 kafka.entity.changelog.schema.Topic.DeleteTopic)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.DeleteTopic other = (kafka.entity.changelog.schema.Topic.DeleteTopic) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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 = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic 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 kafka.entity.changelog.schema.Topic.DeleteTopic parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic 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 kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.DeleteTopic parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.DeleteTopic prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.DeleteTopic}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.DeleteTopic)
        kafka.entity.changelog.schema.Topic.DeleteTopicOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_DeleteTopic_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_DeleteTopic_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.DeleteTopic.class, kafka.entity.changelog.schema.Topic.DeleteTopic.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.DeleteTopic.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_DeleteTopic_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.DeleteTopic getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.DeleteTopic build() {
        kafka.entity.changelog.schema.Topic.DeleteTopic result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.DeleteTopic buildPartial() {
        kafka.entity.changelog.schema.Topic.DeleteTopic result = new kafka.entity.changelog.schema.Topic.DeleteTopic(this);
        result.name_ = name_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.DeleteTopic) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.DeleteTopic)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.DeleteTopic other) {
        if (other == kafka.entity.changelog.schema.Topic.DeleteTopic.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.DeleteTopic parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.DeleteTopic) 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;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.DeleteTopic)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.DeleteTopic)
    private static final kafka.entity.changelog.schema.Topic.DeleteTopic DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.DeleteTopic();
    }

    public static kafka.entity.changelog.schema.Topic.DeleteTopic getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.DeleteTopic getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ApplyTopicConfigOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.ApplyTopicConfig)
      com.google.protobuf.MessageOrBuilder {

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

    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    java.util.List 
        getConfigList();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    kafka.entity.changelog.schema.Topic.Config getConfig(int index);
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    int getConfigCount();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    java.util.List 
        getConfigOrBuilderList();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
        int index);

    /**
     * string username = 3;
     */
    java.lang.String getUsername();
    /**
     * string username = 3;
     */
    com.google.protobuf.ByteString
        getUsernameBytes();

    /**
     * string source = 4;
     */
    java.lang.String getSource();
    /**
     * string source = 4;
     */
    com.google.protobuf.ByteString
        getSourceBytes();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.ApplyTopicConfig}
   */
  public  static final class ApplyTopicConfig extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.ApplyTopicConfig)
      ApplyTopicConfigOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ApplyTopicConfig.newBuilder() to construct.
    private ApplyTopicConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ApplyTopicConfig() {
      name_ = "";
      config_ = java.util.Collections.emptyList();
      username_ = "";
      source_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ApplyTopicConfig();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ApplyTopicConfig(
        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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                config_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              config_.add(
                  input.readMessage(kafka.entity.changelog.schema.Topic.Config.parser(), extensionRegistry));
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();

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

              source_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          config_ = java.util.Collections.unmodifiableList(config_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ApplyTopicConfig_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.ApplyTopicConfig.class, kafka.entity.changelog.schema.Topic.ApplyTopicConfig.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 CONFIG_FIELD_NUMBER = 2;
    private java.util.List config_;
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public java.util.List getConfigList() {
      return config_;
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public java.util.List 
        getConfigOrBuilderList() {
      return config_;
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public int getConfigCount() {
      return config_.size();
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public kafka.entity.changelog.schema.Topic.Config getConfig(int index) {
      return config_.get(index);
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
        int index) {
      return config_.get(index);
    }

    public static final int USERNAME_FIELD_NUMBER = 3;
    private volatile java.lang.Object username_;
    /**
     * string username = 3;
     */
    public java.lang.String getUsername() {
      java.lang.Object ref = username_;
      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();
        username_ = s;
        return s;
      }
    }
    /**
     * string username = 3;
     */
    public com.google.protobuf.ByteString
        getUsernameBytes() {
      java.lang.Object ref = username_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        username_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SOURCE_FIELD_NUMBER = 4;
    private volatile java.lang.Object source_;
    /**
     * string source = 4;
     */
    public java.lang.String getSource() {
      java.lang.Object ref = source_;
      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();
        source_ = s;
        return s;
      }
    }
    /**
     * string source = 4;
     */
    public com.google.protobuf.ByteString
        getSourceBytes() {
      java.lang.Object ref = source_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        source_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      for (int i = 0; i < config_.size(); i++) {
        output.writeMessage(2, config_.get(i));
      }
      if (!getUsernameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, source_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      for (int i = 0; i < config_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, config_.get(i));
      }
      if (!getUsernameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, source_);
      }
      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 kafka.entity.changelog.schema.Topic.ApplyTopicConfig)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.ApplyTopicConfig other = (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (!getConfigList()
          .equals(other.getConfigList())) return false;
      if (!getUsername()
          .equals(other.getUsername())) return false;
      if (!getSource()
          .equals(other.getSource())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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();
      if (getConfigCount() > 0) {
        hash = (37 * hash) + CONFIG_FIELD_NUMBER;
        hash = (53 * hash) + getConfigList().hashCode();
      }
      hash = (37 * hash) + USERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getUsername().hashCode();
      hash = (37 * hash) + SOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getSource().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig 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 kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig 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 kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.ApplyTopicConfig prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.ApplyTopicConfig}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.ApplyTopicConfig)
        kafka.entity.changelog.schema.Topic.ApplyTopicConfigOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ApplyTopicConfig_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.ApplyTopicConfig.class, kafka.entity.changelog.schema.Topic.ApplyTopicConfig.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.ApplyTopicConfig.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        if (configBuilder_ == null) {
          config_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          configBuilder_.clear();
        }
        username_ = "";

        source_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfig getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfig build() {
        kafka.entity.changelog.schema.Topic.ApplyTopicConfig result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ApplyTopicConfig buildPartial() {
        kafka.entity.changelog.schema.Topic.ApplyTopicConfig result = new kafka.entity.changelog.schema.Topic.ApplyTopicConfig(this);
        int from_bitField0_ = bitField0_;
        result.name_ = name_;
        if (configBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            config_ = java.util.Collections.unmodifiableList(config_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.config_ = config_;
        } else {
          result.config_ = configBuilder_.build();
        }
        result.username_ = username_;
        result.source_ = source_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.ApplyTopicConfig) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.ApplyTopicConfig)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.ApplyTopicConfig other) {
        if (other == kafka.entity.changelog.schema.Topic.ApplyTopicConfig.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (configBuilder_ == null) {
          if (!other.config_.isEmpty()) {
            if (config_.isEmpty()) {
              config_ = other.config_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureConfigIsMutable();
              config_.addAll(other.config_);
            }
            onChanged();
          }
        } else {
          if (!other.config_.isEmpty()) {
            if (configBuilder_.isEmpty()) {
              configBuilder_.dispose();
              configBuilder_ = null;
              config_ = other.config_;
              bitField0_ = (bitField0_ & ~0x00000001);
              configBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConfigFieldBuilder() : null;
            } else {
              configBuilder_.addAllMessages(other.config_);
            }
          }
        }
        if (!other.getUsername().isEmpty()) {
          username_ = other.username_;
          onChanged();
        }
        if (!other.getSource().isEmpty()) {
          source_ = other.source_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.ApplyTopicConfig parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.ApplyTopicConfig) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      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.util.List config_ =
        java.util.Collections.emptyList();
      private void ensureConfigIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          config_ = new java.util.ArrayList(config_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder> configBuilder_;

      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List getConfigList() {
        if (configBuilder_ == null) {
          return java.util.Collections.unmodifiableList(config_);
        } else {
          return configBuilder_.getMessageList();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public int getConfigCount() {
        if (configBuilder_ == null) {
          return config_.size();
        } else {
          return configBuilder_.getCount();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config getConfig(int index) {
        if (configBuilder_ == null) {
          return config_.get(index);
        } else {
          return configBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder setConfig(
          int index, kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.set(index, value);
          onChanged();
        } else {
          configBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder setConfig(
          int index, kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.set(index, builderForValue.build());
          onChanged();
        } else {
          configBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.add(value);
          onChanged();
        } else {
          configBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          int index, kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.add(index, value);
          onChanged();
        } else {
          configBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.add(builderForValue.build());
          onChanged();
        } else {
          configBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          int index, kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.add(index, builderForValue.build());
          onChanged();
        } else {
          configBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addAllConfig(
          java.lang.Iterable values) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, config_);
          onChanged();
        } else {
          configBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder clearConfig() {
        if (configBuilder_ == null) {
          config_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          configBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder removeConfig(int index) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.remove(index);
          onChanged();
        } else {
          configBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder getConfigBuilder(
          int index) {
        return getConfigFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
          int index) {
        if (configBuilder_ == null) {
          return config_.get(index);  } else {
          return configBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List 
           getConfigOrBuilderList() {
        if (configBuilder_ != null) {
          return configBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(config_);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder addConfigBuilder() {
        return getConfigFieldBuilder().addBuilder(
            kafka.entity.changelog.schema.Topic.Config.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder addConfigBuilder(
          int index) {
        return getConfigFieldBuilder().addBuilder(
            index, kafka.entity.changelog.schema.Topic.Config.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List 
           getConfigBuilderList() {
        return getConfigFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder> 
          getConfigFieldBuilder() {
        if (configBuilder_ == null) {
          configBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder>(
                  config_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          config_ = null;
        }
        return configBuilder_;
      }

      private java.lang.Object username_ = "";
      /**
       * string username = 3;
       */
      public java.lang.String getUsername() {
        java.lang.Object ref = username_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          username_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string username = 3;
       */
      public com.google.protobuf.ByteString
          getUsernameBytes() {
        java.lang.Object ref = username_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          username_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string username = 3;
       */
      public Builder setUsername(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        username_ = value;
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder clearUsername() {
        
        username_ = getDefaultInstance().getUsername();
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder setUsernameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        username_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object source_ = "";
      /**
       * string source = 4;
       */
      public java.lang.String getSource() {
        java.lang.Object ref = source_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          source_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string source = 4;
       */
      public com.google.protobuf.ByteString
          getSourceBytes() {
        java.lang.Object ref = source_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          source_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string source = 4;
       */
      public Builder setSource(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        source_ = value;
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder clearSource() {
        
        source_ = getDefaultInstance().getSource();
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder setSourceBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        source_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.ApplyTopicConfig)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.ApplyTopicConfig)
    private static final kafka.entity.changelog.schema.Topic.ApplyTopicConfig DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.ApplyTopicConfig();
    }

    public static kafka.entity.changelog.schema.Topic.ApplyTopicConfig getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.ApplyTopicConfig getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface EventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.Event)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string topicName = 1;
     */
    java.lang.String getTopicName();
    /**
     * string topicName = 1;
     */
    com.google.protobuf.ByteString
        getTopicNameBytes();

    /**
     * int64 timestamp = 2;
     */
    long getTimestamp();

    /**
     * string username = 3;
     */
    java.lang.String getUsername();
    /**
     * string username = 3;
     */
    com.google.protobuf.ByteString
        getUsernameBytes();

    /**
     * string source = 4;
     */
    java.lang.String getSource();
    /**
     * string source = 4;
     */
    com.google.protobuf.ByteString
        getSourceBytes();

    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    boolean hasCreationEvent();
    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    kafka.entity.changelog.schema.Topic.CreationEvent getCreationEvent();
    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    kafka.entity.changelog.schema.Topic.CreationEventOrBuilder getCreationEventOrBuilder();

    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    boolean hasConfigEvent();
    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    kafka.entity.changelog.schema.Topic.ConfigEvent getConfigEvent();
    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder getConfigEventOrBuilder();

    public kafka.entity.changelog.schema.Topic.Event.EventCase getEventCase();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.Event}
   */
  public  static final class Event extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.Event)
      EventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Event.newBuilder() to construct.
    private Event(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Event() {
      topicName_ = "";
      username_ = "";
      source_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Event();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Event(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              topicName_ = s;
              break;
            }
            case 16: {

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

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

              source_ = s;
              break;
            }
            case 42: {
              kafka.entity.changelog.schema.Topic.CreationEvent.Builder subBuilder = null;
              if (eventCase_ == 5) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.CreationEvent) event_).toBuilder();
              }
              event_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.CreationEvent.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.CreationEvent) event_);
                event_ = subBuilder.buildPartial();
              }
              eventCase_ = 5;
              break;
            }
            case 50: {
              kafka.entity.changelog.schema.Topic.ConfigEvent.Builder subBuilder = null;
              if (eventCase_ == 6) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.ConfigEvent) event_).toBuilder();
              }
              event_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.ConfigEvent.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.ConfigEvent) event_);
                event_ = subBuilder.buildPartial();
              }
              eventCase_ = 6;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Event_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Event_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.Event.class, kafka.entity.changelog.schema.Topic.Event.Builder.class);
    }

    private int eventCase_ = 0;
    private java.lang.Object event_;
    public enum EventCase
        implements com.google.protobuf.Internal.EnumLite {
      CREATIONEVENT(5),
      CONFIGEVENT(6),
      EVENT_NOT_SET(0);
      private final int value;
      private EventCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static EventCase valueOf(int value) {
        return forNumber(value);
      }

      public static EventCase forNumber(int value) {
        switch (value) {
          case 5: return CREATIONEVENT;
          case 6: return CONFIGEVENT;
          case 0: return EVENT_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public EventCase
    getEventCase() {
      return EventCase.forNumber(
          eventCase_);
    }

    public static final int TOPICNAME_FIELD_NUMBER = 1;
    private volatile java.lang.Object topicName_;
    /**
     * string topicName = 1;
     */
    public java.lang.String getTopicName() {
      java.lang.Object ref = topicName_;
      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();
        topicName_ = s;
        return s;
      }
    }
    /**
     * string topicName = 1;
     */
    public com.google.protobuf.ByteString
        getTopicNameBytes() {
      java.lang.Object ref = topicName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        topicName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TIMESTAMP_FIELD_NUMBER = 2;
    private long timestamp_;
    /**
     * int64 timestamp = 2;
     */
    public long getTimestamp() {
      return timestamp_;
    }

    public static final int USERNAME_FIELD_NUMBER = 3;
    private volatile java.lang.Object username_;
    /**
     * string username = 3;
     */
    public java.lang.String getUsername() {
      java.lang.Object ref = username_;
      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();
        username_ = s;
        return s;
      }
    }
    /**
     * string username = 3;
     */
    public com.google.protobuf.ByteString
        getUsernameBytes() {
      java.lang.Object ref = username_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        username_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SOURCE_FIELD_NUMBER = 4;
    private volatile java.lang.Object source_;
    /**
     * string source = 4;
     */
    public java.lang.String getSource() {
      java.lang.Object ref = source_;
      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();
        source_ = s;
        return s;
      }
    }
    /**
     * string source = 4;
     */
    public com.google.protobuf.ByteString
        getSourceBytes() {
      java.lang.Object ref = source_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        source_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CREATIONEVENT_FIELD_NUMBER = 5;
    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    public boolean hasCreationEvent() {
      return eventCase_ == 5;
    }
    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    public kafka.entity.changelog.schema.Topic.CreationEvent getCreationEvent() {
      if (eventCase_ == 5) {
         return (kafka.entity.changelog.schema.Topic.CreationEvent) event_;
      }
      return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.CreationEvent creationEvent = 5;
     */
    public kafka.entity.changelog.schema.Topic.CreationEventOrBuilder getCreationEventOrBuilder() {
      if (eventCase_ == 5) {
         return (kafka.entity.changelog.schema.Topic.CreationEvent) event_;
      }
      return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
    }

    public static final int CONFIGEVENT_FIELD_NUMBER = 6;
    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    public boolean hasConfigEvent() {
      return eventCase_ == 6;
    }
    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    public kafka.entity.changelog.schema.Topic.ConfigEvent getConfigEvent() {
      if (eventCase_ == 6) {
         return (kafka.entity.changelog.schema.Topic.ConfigEvent) event_;
      }
      return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.ConfigEvent configEvent = 6;
     */
    public kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder getConfigEventOrBuilder() {
      if (eventCase_ == 6) {
         return (kafka.entity.changelog.schema.Topic.ConfigEvent) event_;
      }
      return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getTopicNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, topicName_);
      }
      if (timestamp_ != 0L) {
        output.writeInt64(2, timestamp_);
      }
      if (!getUsernameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, source_);
      }
      if (eventCase_ == 5) {
        output.writeMessage(5, (kafka.entity.changelog.schema.Topic.CreationEvent) event_);
      }
      if (eventCase_ == 6) {
        output.writeMessage(6, (kafka.entity.changelog.schema.Topic.ConfigEvent) event_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getTopicNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, topicName_);
      }
      if (timestamp_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, timestamp_);
      }
      if (!getUsernameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, source_);
      }
      if (eventCase_ == 5) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, (kafka.entity.changelog.schema.Topic.CreationEvent) event_);
      }
      if (eventCase_ == 6) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, (kafka.entity.changelog.schema.Topic.ConfigEvent) event_);
      }
      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 kafka.entity.changelog.schema.Topic.Event)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.Event other = (kafka.entity.changelog.schema.Topic.Event) obj;

      if (!getTopicName()
          .equals(other.getTopicName())) return false;
      if (getTimestamp()
          != other.getTimestamp()) return false;
      if (!getUsername()
          .equals(other.getUsername())) return false;
      if (!getSource()
          .equals(other.getSource())) return false;
      if (!getEventCase().equals(other.getEventCase())) return false;
      switch (eventCase_) {
        case 5:
          if (!getCreationEvent()
              .equals(other.getCreationEvent())) return false;
          break;
        case 6:
          if (!getConfigEvent()
              .equals(other.getConfigEvent())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TOPICNAME_FIELD_NUMBER;
      hash = (53 * hash) + getTopicName().hashCode();
      hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getTimestamp());
      hash = (37 * hash) + USERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getUsername().hashCode();
      hash = (37 * hash) + SOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getSource().hashCode();
      switch (eventCase_) {
        case 5:
          hash = (37 * hash) + CREATIONEVENT_FIELD_NUMBER;
          hash = (53 * hash) + getCreationEvent().hashCode();
          break;
        case 6:
          hash = (37 * hash) + CONFIGEVENT_FIELD_NUMBER;
          hash = (53 * hash) + getConfigEvent().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Event 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 kafka.entity.changelog.schema.Topic.Event parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Event 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 kafka.entity.changelog.schema.Topic.Event parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Event parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.Event prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.Event}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.Event)
        kafka.entity.changelog.schema.Topic.EventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Event_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Event_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.Event.class, kafka.entity.changelog.schema.Topic.Event.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.Event.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        topicName_ = "";

        timestamp_ = 0L;

        username_ = "";

        source_ = "";

        eventCase_ = 0;
        event_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Event_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Event getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.Event.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Event build() {
        kafka.entity.changelog.schema.Topic.Event result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Event buildPartial() {
        kafka.entity.changelog.schema.Topic.Event result = new kafka.entity.changelog.schema.Topic.Event(this);
        result.topicName_ = topicName_;
        result.timestamp_ = timestamp_;
        result.username_ = username_;
        result.source_ = source_;
        if (eventCase_ == 5) {
          if (creationEventBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = creationEventBuilder_.build();
          }
        }
        if (eventCase_ == 6) {
          if (configEventBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = configEventBuilder_.build();
          }
        }
        result.eventCase_ = eventCase_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.Event) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.Event)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.Event other) {
        if (other == kafka.entity.changelog.schema.Topic.Event.getDefaultInstance()) return this;
        if (!other.getTopicName().isEmpty()) {
          topicName_ = other.topicName_;
          onChanged();
        }
        if (other.getTimestamp() != 0L) {
          setTimestamp(other.getTimestamp());
        }
        if (!other.getUsername().isEmpty()) {
          username_ = other.username_;
          onChanged();
        }
        if (!other.getSource().isEmpty()) {
          source_ = other.source_;
          onChanged();
        }
        switch (other.getEventCase()) {
          case CREATIONEVENT: {
            mergeCreationEvent(other.getCreationEvent());
            break;
          }
          case CONFIGEVENT: {
            mergeConfigEvent(other.getConfigEvent());
            break;
          }
          case EVENT_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.Event parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.Event) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int eventCase_ = 0;
      private java.lang.Object event_;
      public EventCase
          getEventCase() {
        return EventCase.forNumber(
            eventCase_);
      }

      public Builder clearEvent() {
        eventCase_ = 0;
        event_ = null;
        onChanged();
        return this;
      }


      private java.lang.Object topicName_ = "";
      /**
       * string topicName = 1;
       */
      public java.lang.String getTopicName() {
        java.lang.Object ref = topicName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          topicName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string topicName = 1;
       */
      public com.google.protobuf.ByteString
          getTopicNameBytes() {
        java.lang.Object ref = topicName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          topicName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string topicName = 1;
       */
      public Builder setTopicName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        topicName_ = value;
        onChanged();
        return this;
      }
      /**
       * string topicName = 1;
       */
      public Builder clearTopicName() {
        
        topicName_ = getDefaultInstance().getTopicName();
        onChanged();
        return this;
      }
      /**
       * string topicName = 1;
       */
      public Builder setTopicNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        topicName_ = value;
        onChanged();
        return this;
      }

      private long timestamp_ ;
      /**
       * int64 timestamp = 2;
       */
      public long getTimestamp() {
        return timestamp_;
      }
      /**
       * int64 timestamp = 2;
       */
      public Builder setTimestamp(long value) {
        
        timestamp_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 timestamp = 2;
       */
      public Builder clearTimestamp() {
        
        timestamp_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object username_ = "";
      /**
       * string username = 3;
       */
      public java.lang.String getUsername() {
        java.lang.Object ref = username_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          username_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string username = 3;
       */
      public com.google.protobuf.ByteString
          getUsernameBytes() {
        java.lang.Object ref = username_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          username_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string username = 3;
       */
      public Builder setUsername(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        username_ = value;
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder clearUsername() {
        
        username_ = getDefaultInstance().getUsername();
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder setUsernameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        username_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object source_ = "";
      /**
       * string source = 4;
       */
      public java.lang.String getSource() {
        java.lang.Object ref = source_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          source_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string source = 4;
       */
      public com.google.protobuf.ByteString
          getSourceBytes() {
        java.lang.Object ref = source_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          source_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string source = 4;
       */
      public Builder setSource(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        source_ = value;
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder clearSource() {
        
        source_ = getDefaultInstance().getSource();
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder setSourceBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        source_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.CreationEvent, kafka.entity.changelog.schema.Topic.CreationEvent.Builder, kafka.entity.changelog.schema.Topic.CreationEventOrBuilder> creationEventBuilder_;
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public boolean hasCreationEvent() {
        return eventCase_ == 5;
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreationEvent getCreationEvent() {
        if (creationEventBuilder_ == null) {
          if (eventCase_ == 5) {
            return (kafka.entity.changelog.schema.Topic.CreationEvent) event_;
          }
          return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
        } else {
          if (eventCase_ == 5) {
            return creationEventBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public Builder setCreationEvent(kafka.entity.changelog.schema.Topic.CreationEvent value) {
        if (creationEventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          creationEventBuilder_.setMessage(value);
        }
        eventCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public Builder setCreationEvent(
          kafka.entity.changelog.schema.Topic.CreationEvent.Builder builderForValue) {
        if (creationEventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          creationEventBuilder_.setMessage(builderForValue.build());
        }
        eventCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public Builder mergeCreationEvent(kafka.entity.changelog.schema.Topic.CreationEvent value) {
        if (creationEventBuilder_ == null) {
          if (eventCase_ == 5 &&
              event_ != kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance()) {
            event_ = kafka.entity.changelog.schema.Topic.CreationEvent.newBuilder((kafka.entity.changelog.schema.Topic.CreationEvent) event_)
                .mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          if (eventCase_ == 5) {
            creationEventBuilder_.mergeFrom(value);
          }
          creationEventBuilder_.setMessage(value);
        }
        eventCase_ = 5;
        return this;
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public Builder clearCreationEvent() {
        if (creationEventBuilder_ == null) {
          if (eventCase_ == 5) {
            eventCase_ = 0;
            event_ = null;
            onChanged();
          }
        } else {
          if (eventCase_ == 5) {
            eventCase_ = 0;
            event_ = null;
          }
          creationEventBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreationEvent.Builder getCreationEventBuilder() {
        return getCreationEventFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      public kafka.entity.changelog.schema.Topic.CreationEventOrBuilder getCreationEventOrBuilder() {
        if ((eventCase_ == 5) && (creationEventBuilder_ != null)) {
          return creationEventBuilder_.getMessageOrBuilder();
        } else {
          if (eventCase_ == 5) {
            return (kafka.entity.changelog.schema.Topic.CreationEvent) event_;
          }
          return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.CreationEvent creationEvent = 5;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.CreationEvent, kafka.entity.changelog.schema.Topic.CreationEvent.Builder, kafka.entity.changelog.schema.Topic.CreationEventOrBuilder> 
          getCreationEventFieldBuilder() {
        if (creationEventBuilder_ == null) {
          if (!(eventCase_ == 5)) {
            event_ = kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
          }
          creationEventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.CreationEvent, kafka.entity.changelog.schema.Topic.CreationEvent.Builder, kafka.entity.changelog.schema.Topic.CreationEventOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.CreationEvent) event_,
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        eventCase_ = 5;
        onChanged();;
        return creationEventBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ConfigEvent, kafka.entity.changelog.schema.Topic.ConfigEvent.Builder, kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder> configEventBuilder_;
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public boolean hasConfigEvent() {
        return eventCase_ == 6;
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public kafka.entity.changelog.schema.Topic.ConfigEvent getConfigEvent() {
        if (configEventBuilder_ == null) {
          if (eventCase_ == 6) {
            return (kafka.entity.changelog.schema.Topic.ConfigEvent) event_;
          }
          return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
        } else {
          if (eventCase_ == 6) {
            return configEventBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public Builder setConfigEvent(kafka.entity.changelog.schema.Topic.ConfigEvent value) {
        if (configEventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          configEventBuilder_.setMessage(value);
        }
        eventCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public Builder setConfigEvent(
          kafka.entity.changelog.schema.Topic.ConfigEvent.Builder builderForValue) {
        if (configEventBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          configEventBuilder_.setMessage(builderForValue.build());
        }
        eventCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public Builder mergeConfigEvent(kafka.entity.changelog.schema.Topic.ConfigEvent value) {
        if (configEventBuilder_ == null) {
          if (eventCase_ == 6 &&
              event_ != kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance()) {
            event_ = kafka.entity.changelog.schema.Topic.ConfigEvent.newBuilder((kafka.entity.changelog.schema.Topic.ConfigEvent) event_)
                .mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          if (eventCase_ == 6) {
            configEventBuilder_.mergeFrom(value);
          }
          configEventBuilder_.setMessage(value);
        }
        eventCase_ = 6;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public Builder clearConfigEvent() {
        if (configEventBuilder_ == null) {
          if (eventCase_ == 6) {
            eventCase_ = 0;
            event_ = null;
            onChanged();
          }
        } else {
          if (eventCase_ == 6) {
            eventCase_ = 0;
            event_ = null;
          }
          configEventBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public kafka.entity.changelog.schema.Topic.ConfigEvent.Builder getConfigEventBuilder() {
        return getConfigEventFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      public kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder getConfigEventOrBuilder() {
        if ((eventCase_ == 6) && (configEventBuilder_ != null)) {
          return configEventBuilder_.getMessageOrBuilder();
        } else {
          if (eventCase_ == 6) {
            return (kafka.entity.changelog.schema.Topic.ConfigEvent) event_;
          }
          return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ConfigEvent configEvent = 6;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ConfigEvent, kafka.entity.changelog.schema.Topic.ConfigEvent.Builder, kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder> 
          getConfigEventFieldBuilder() {
        if (configEventBuilder_ == null) {
          if (!(eventCase_ == 6)) {
            event_ = kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
          }
          configEventBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.ConfigEvent, kafka.entity.changelog.schema.Topic.ConfigEvent.Builder, kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.ConfigEvent) event_,
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        eventCase_ = 6;
        onChanged();;
        return configEventBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.Event)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.Event)
    private static final kafka.entity.changelog.schema.Topic.Event DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.Event();
    }

    public static kafka.entity.changelog.schema.Topic.Event getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.Event getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface CreationEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.CreationEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    boolean hasTopicCreated();
    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicCreated getTopicCreated();
    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder getTopicCreatedOrBuilder();

    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    boolean hasTopicDeleted();
    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    kafka.entity.changelog.schema.Topic.TopicDeleted getTopicDeleted();
    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder getTopicDeletedOrBuilder();

    public kafka.entity.changelog.schema.Topic.CreationEvent.EventCase getEventCase();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.CreationEvent}
   */
  public  static final class CreationEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.CreationEvent)
      CreationEventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreationEvent.newBuilder() to construct.
    private CreationEvent(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private CreationEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreationEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CreationEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 18: {
              kafka.entity.changelog.schema.Topic.TopicCreated.Builder subBuilder = null;
              if (eventCase_ == 2) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.TopicCreated) event_).toBuilder();
              }
              event_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.TopicCreated.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.TopicCreated) event_);
                event_ = subBuilder.buildPartial();
              }
              eventCase_ = 2;
              break;
            }
            case 26: {
              kafka.entity.changelog.schema.Topic.TopicDeleted.Builder subBuilder = null;
              if (eventCase_ == 3) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.TopicDeleted) event_).toBuilder();
              }
              event_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.TopicDeleted.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.TopicDeleted) event_);
                event_ = subBuilder.buildPartial();
              }
              eventCase_ = 3;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreationEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreationEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.CreationEvent.class, kafka.entity.changelog.schema.Topic.CreationEvent.Builder.class);
    }

    private int eventCase_ = 0;
    private java.lang.Object event_;
    public enum EventCase
        implements com.google.protobuf.Internal.EnumLite {
      TOPICCREATED(2),
      TOPICDELETED(3),
      EVENT_NOT_SET(0);
      private final int value;
      private EventCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static EventCase valueOf(int value) {
        return forNumber(value);
      }

      public static EventCase forNumber(int value) {
        switch (value) {
          case 2: return TOPICCREATED;
          case 3: return TOPICDELETED;
          case 0: return EVENT_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public EventCase
    getEventCase() {
      return EventCase.forNumber(
          eventCase_);
    }

    public static final int TOPICCREATED_FIELD_NUMBER = 2;
    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    public boolean hasTopicCreated() {
      return eventCase_ == 2;
    }
    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicCreated getTopicCreated() {
      if (eventCase_ == 2) {
         return (kafka.entity.changelog.schema.Topic.TopicCreated) event_;
      }
      return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.TopicCreated topicCreated = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder getTopicCreatedOrBuilder() {
      if (eventCase_ == 2) {
         return (kafka.entity.changelog.schema.Topic.TopicCreated) event_;
      }
      return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
    }

    public static final int TOPICDELETED_FIELD_NUMBER = 3;
    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    public boolean hasTopicDeleted() {
      return eventCase_ == 3;
    }
    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    public kafka.entity.changelog.schema.Topic.TopicDeleted getTopicDeleted() {
      if (eventCase_ == 3) {
         return (kafka.entity.changelog.schema.Topic.TopicDeleted) event_;
      }
      return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
     */
    public kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder getTopicDeletedOrBuilder() {
      if (eventCase_ == 3) {
         return (kafka.entity.changelog.schema.Topic.TopicDeleted) event_;
      }
      return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (eventCase_ == 2) {
        output.writeMessage(2, (kafka.entity.changelog.schema.Topic.TopicCreated) event_);
      }
      if (eventCase_ == 3) {
        output.writeMessage(3, (kafka.entity.changelog.schema.Topic.TopicDeleted) event_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (eventCase_ == 2) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, (kafka.entity.changelog.schema.Topic.TopicCreated) event_);
      }
      if (eventCase_ == 3) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, (kafka.entity.changelog.schema.Topic.TopicDeleted) event_);
      }
      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 kafka.entity.changelog.schema.Topic.CreationEvent)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.CreationEvent other = (kafka.entity.changelog.schema.Topic.CreationEvent) obj;

      if (!getEventCase().equals(other.getEventCase())) return false;
      switch (eventCase_) {
        case 2:
          if (!getTopicCreated()
              .equals(other.getTopicCreated())) return false;
          break;
        case 3:
          if (!getTopicDeleted()
              .equals(other.getTopicDeleted())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      switch (eventCase_) {
        case 2:
          hash = (37 * hash) + TOPICCREATED_FIELD_NUMBER;
          hash = (53 * hash) + getTopicCreated().hashCode();
          break;
        case 3:
          hash = (37 * hash) + TOPICDELETED_FIELD_NUMBER;
          hash = (53 * hash) + getTopicDeleted().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent 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 kafka.entity.changelog.schema.Topic.CreationEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent 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 kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.CreationEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.CreationEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.CreationEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.CreationEvent)
        kafka.entity.changelog.schema.Topic.CreationEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreationEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreationEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.CreationEvent.class, kafka.entity.changelog.schema.Topic.CreationEvent.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.CreationEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        eventCase_ = 0;
        event_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_CreationEvent_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreationEvent getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreationEvent build() {
        kafka.entity.changelog.schema.Topic.CreationEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.CreationEvent buildPartial() {
        kafka.entity.changelog.schema.Topic.CreationEvent result = new kafka.entity.changelog.schema.Topic.CreationEvent(this);
        if (eventCase_ == 2) {
          if (topicCreatedBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = topicCreatedBuilder_.build();
          }
        }
        if (eventCase_ == 3) {
          if (topicDeletedBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = topicDeletedBuilder_.build();
          }
        }
        result.eventCase_ = eventCase_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.CreationEvent) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.CreationEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.CreationEvent other) {
        if (other == kafka.entity.changelog.schema.Topic.CreationEvent.getDefaultInstance()) return this;
        switch (other.getEventCase()) {
          case TOPICCREATED: {
            mergeTopicCreated(other.getTopicCreated());
            break;
          }
          case TOPICDELETED: {
            mergeTopicDeleted(other.getTopicDeleted());
            break;
          }
          case EVENT_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.CreationEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.CreationEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int eventCase_ = 0;
      private java.lang.Object event_;
      public EventCase
          getEventCase() {
        return EventCase.forNumber(
            eventCase_);
      }

      public Builder clearEvent() {
        eventCase_ = 0;
        event_ = null;
        onChanged();
        return this;
      }


      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicCreated, kafka.entity.changelog.schema.Topic.TopicCreated.Builder, kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder> topicCreatedBuilder_;
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public boolean hasTopicCreated() {
        return eventCase_ == 2;
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicCreated getTopicCreated() {
        if (topicCreatedBuilder_ == null) {
          if (eventCase_ == 2) {
            return (kafka.entity.changelog.schema.Topic.TopicCreated) event_;
          }
          return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
        } else {
          if (eventCase_ == 2) {
            return topicCreatedBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public Builder setTopicCreated(kafka.entity.changelog.schema.Topic.TopicCreated value) {
        if (topicCreatedBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          topicCreatedBuilder_.setMessage(value);
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public Builder setTopicCreated(
          kafka.entity.changelog.schema.Topic.TopicCreated.Builder builderForValue) {
        if (topicCreatedBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          topicCreatedBuilder_.setMessage(builderForValue.build());
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public Builder mergeTopicCreated(kafka.entity.changelog.schema.Topic.TopicCreated value) {
        if (topicCreatedBuilder_ == null) {
          if (eventCase_ == 2 &&
              event_ != kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance()) {
            event_ = kafka.entity.changelog.schema.Topic.TopicCreated.newBuilder((kafka.entity.changelog.schema.Topic.TopicCreated) event_)
                .mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          if (eventCase_ == 2) {
            topicCreatedBuilder_.mergeFrom(value);
          }
          topicCreatedBuilder_.setMessage(value);
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public Builder clearTopicCreated() {
        if (topicCreatedBuilder_ == null) {
          if (eventCase_ == 2) {
            eventCase_ = 0;
            event_ = null;
            onChanged();
          }
        } else {
          if (eventCase_ == 2) {
            eventCase_ = 0;
            event_ = null;
          }
          topicCreatedBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicCreated.Builder getTopicCreatedBuilder() {
        return getTopicCreatedFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder getTopicCreatedOrBuilder() {
        if ((eventCase_ == 2) && (topicCreatedBuilder_ != null)) {
          return topicCreatedBuilder_.getMessageOrBuilder();
        } else {
          if (eventCase_ == 2) {
            return (kafka.entity.changelog.schema.Topic.TopicCreated) event_;
          }
          return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicCreated topicCreated = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicCreated, kafka.entity.changelog.schema.Topic.TopicCreated.Builder, kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder> 
          getTopicCreatedFieldBuilder() {
        if (topicCreatedBuilder_ == null) {
          if (!(eventCase_ == 2)) {
            event_ = kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
          }
          topicCreatedBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.TopicCreated, kafka.entity.changelog.schema.Topic.TopicCreated.Builder, kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.TopicCreated) event_,
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        eventCase_ = 2;
        onChanged();;
        return topicCreatedBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicDeleted, kafka.entity.changelog.schema.Topic.TopicDeleted.Builder, kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder> topicDeletedBuilder_;
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public boolean hasTopicDeleted() {
        return eventCase_ == 3;
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public kafka.entity.changelog.schema.Topic.TopicDeleted getTopicDeleted() {
        if (topicDeletedBuilder_ == null) {
          if (eventCase_ == 3) {
            return (kafka.entity.changelog.schema.Topic.TopicDeleted) event_;
          }
          return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
        } else {
          if (eventCase_ == 3) {
            return topicDeletedBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public Builder setTopicDeleted(kafka.entity.changelog.schema.Topic.TopicDeleted value) {
        if (topicDeletedBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          topicDeletedBuilder_.setMessage(value);
        }
        eventCase_ = 3;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public Builder setTopicDeleted(
          kafka.entity.changelog.schema.Topic.TopicDeleted.Builder builderForValue) {
        if (topicDeletedBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          topicDeletedBuilder_.setMessage(builderForValue.build());
        }
        eventCase_ = 3;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public Builder mergeTopicDeleted(kafka.entity.changelog.schema.Topic.TopicDeleted value) {
        if (topicDeletedBuilder_ == null) {
          if (eventCase_ == 3 &&
              event_ != kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance()) {
            event_ = kafka.entity.changelog.schema.Topic.TopicDeleted.newBuilder((kafka.entity.changelog.schema.Topic.TopicDeleted) event_)
                .mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          if (eventCase_ == 3) {
            topicDeletedBuilder_.mergeFrom(value);
          }
          topicDeletedBuilder_.setMessage(value);
        }
        eventCase_ = 3;
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public Builder clearTopicDeleted() {
        if (topicDeletedBuilder_ == null) {
          if (eventCase_ == 3) {
            eventCase_ = 0;
            event_ = null;
            onChanged();
          }
        } else {
          if (eventCase_ == 3) {
            eventCase_ = 0;
            event_ = null;
          }
          topicDeletedBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public kafka.entity.changelog.schema.Topic.TopicDeleted.Builder getTopicDeletedBuilder() {
        return getTopicDeletedFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      public kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder getTopicDeletedOrBuilder() {
        if ((eventCase_ == 3) && (topicDeletedBuilder_ != null)) {
          return topicDeletedBuilder_.getMessageOrBuilder();
        } else {
          if (eventCase_ == 3) {
            return (kafka.entity.changelog.schema.Topic.TopicDeleted) event_;
          }
          return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.TopicDeleted topicDeleted = 3;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicDeleted, kafka.entity.changelog.schema.Topic.TopicDeleted.Builder, kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder> 
          getTopicDeletedFieldBuilder() {
        if (topicDeletedBuilder_ == null) {
          if (!(eventCase_ == 3)) {
            event_ = kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
          }
          topicDeletedBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.TopicDeleted, kafka.entity.changelog.schema.Topic.TopicDeleted.Builder, kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.TopicDeleted) event_,
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        eventCase_ = 3;
        onChanged();;
        return topicDeletedBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.CreationEvent)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.CreationEvent)
    private static final kafka.entity.changelog.schema.Topic.CreationEvent DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.CreationEvent();
    }

    public static kafka.entity.changelog.schema.Topic.CreationEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.CreationEvent getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface EventsOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.Events)
      com.google.protobuf.MessageOrBuilder {

    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    java.util.List 
        getEventList();
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    kafka.entity.changelog.schema.Topic.Event getEvent(int index);
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    int getEventCount();
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    java.util.List 
        getEventOrBuilderList();
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    kafka.entity.changelog.schema.Topic.EventOrBuilder getEventOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.Events}
   */
  public  static final class Events extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.Events)
      EventsOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Events.newBuilder() to construct.
    private Events(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Events() {
      event_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Events();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Events(
        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;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                event_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              event_.add(
                  input.readMessage(kafka.entity.changelog.schema.Topic.Event.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          event_ = java.util.Collections.unmodifiableList(event_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Events_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Events_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.Events.class, kafka.entity.changelog.schema.Topic.Events.Builder.class);
    }

    public static final int EVENT_FIELD_NUMBER = 1;
    private java.util.List event_;
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    public java.util.List getEventList() {
      return event_;
    }
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    public java.util.List 
        getEventOrBuilderList() {
      return event_;
    }
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    public int getEventCount() {
      return event_.size();
    }
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    public kafka.entity.changelog.schema.Topic.Event getEvent(int index) {
      return event_.get(index);
    }
    /**
     * repeated .kafka.entity.changelog.Event event = 1;
     */
    public kafka.entity.changelog.schema.Topic.EventOrBuilder getEventOrBuilder(
        int index) {
      return event_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < event_.size(); i++) {
        output.writeMessage(1, event_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < event_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, event_.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 kafka.entity.changelog.schema.Topic.Events)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.Events other = (kafka.entity.changelog.schema.Topic.Events) obj;

      if (!getEventList()
          .equals(other.getEventList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getEventCount() > 0) {
        hash = (37 * hash) + EVENT_FIELD_NUMBER;
        hash = (53 * hash) + getEventList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Events 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 kafka.entity.changelog.schema.Topic.Events parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Events 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 kafka.entity.changelog.schema.Topic.Events parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Events parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.Events prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.Events}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.Events)
        kafka.entity.changelog.schema.Topic.EventsOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Events_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Events_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.Events.class, kafka.entity.changelog.schema.Topic.Events.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.Events.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getEventFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (eventBuilder_ == null) {
          event_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          eventBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Events_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Events getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.Events.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Events build() {
        kafka.entity.changelog.schema.Topic.Events result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Events buildPartial() {
        kafka.entity.changelog.schema.Topic.Events result = new kafka.entity.changelog.schema.Topic.Events(this);
        int from_bitField0_ = bitField0_;
        if (eventBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            event_ = java.util.Collections.unmodifiableList(event_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.event_ = event_;
        } else {
          result.event_ = eventBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.Events) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.Events)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.Events other) {
        if (other == kafka.entity.changelog.schema.Topic.Events.getDefaultInstance()) return this;
        if (eventBuilder_ == null) {
          if (!other.event_.isEmpty()) {
            if (event_.isEmpty()) {
              event_ = other.event_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureEventIsMutable();
              event_.addAll(other.event_);
            }
            onChanged();
          }
        } else {
          if (!other.event_.isEmpty()) {
            if (eventBuilder_.isEmpty()) {
              eventBuilder_.dispose();
              eventBuilder_ = null;
              event_ = other.event_;
              bitField0_ = (bitField0_ & ~0x00000001);
              eventBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getEventFieldBuilder() : null;
            } else {
              eventBuilder_.addAllMessages(other.event_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.Events parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.Events) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List event_ =
        java.util.Collections.emptyList();
      private void ensureEventIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          event_ = new java.util.ArrayList(event_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Event, kafka.entity.changelog.schema.Topic.Event.Builder, kafka.entity.changelog.schema.Topic.EventOrBuilder> eventBuilder_;

      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public java.util.List getEventList() {
        if (eventBuilder_ == null) {
          return java.util.Collections.unmodifiableList(event_);
        } else {
          return eventBuilder_.getMessageList();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public int getEventCount() {
        if (eventBuilder_ == null) {
          return event_.size();
        } else {
          return eventBuilder_.getCount();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public kafka.entity.changelog.schema.Topic.Event getEvent(int index) {
        if (eventBuilder_ == null) {
          return event_.get(index);
        } else {
          return eventBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder setEvent(
          int index, kafka.entity.changelog.schema.Topic.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureEventIsMutable();
          event_.set(index, value);
          onChanged();
        } else {
          eventBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder setEvent(
          int index, kafka.entity.changelog.schema.Topic.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          ensureEventIsMutable();
          event_.set(index, builderForValue.build());
          onChanged();
        } else {
          eventBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder addEvent(kafka.entity.changelog.schema.Topic.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureEventIsMutable();
          event_.add(value);
          onChanged();
        } else {
          eventBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder addEvent(
          int index, kafka.entity.changelog.schema.Topic.Event value) {
        if (eventBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureEventIsMutable();
          event_.add(index, value);
          onChanged();
        } else {
          eventBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder addEvent(
          kafka.entity.changelog.schema.Topic.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          ensureEventIsMutable();
          event_.add(builderForValue.build());
          onChanged();
        } else {
          eventBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder addEvent(
          int index, kafka.entity.changelog.schema.Topic.Event.Builder builderForValue) {
        if (eventBuilder_ == null) {
          ensureEventIsMutable();
          event_.add(index, builderForValue.build());
          onChanged();
        } else {
          eventBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder addAllEvent(
          java.lang.Iterable values) {
        if (eventBuilder_ == null) {
          ensureEventIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, event_);
          onChanged();
        } else {
          eventBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder clearEvent() {
        if (eventBuilder_ == null) {
          event_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          eventBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public Builder removeEvent(int index) {
        if (eventBuilder_ == null) {
          ensureEventIsMutable();
          event_.remove(index);
          onChanged();
        } else {
          eventBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public kafka.entity.changelog.schema.Topic.Event.Builder getEventBuilder(
          int index) {
        return getEventFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public kafka.entity.changelog.schema.Topic.EventOrBuilder getEventOrBuilder(
          int index) {
        if (eventBuilder_ == null) {
          return event_.get(index);  } else {
          return eventBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public java.util.List 
           getEventOrBuilderList() {
        if (eventBuilder_ != null) {
          return eventBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(event_);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public kafka.entity.changelog.schema.Topic.Event.Builder addEventBuilder() {
        return getEventFieldBuilder().addBuilder(
            kafka.entity.changelog.schema.Topic.Event.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public kafka.entity.changelog.schema.Topic.Event.Builder addEventBuilder(
          int index) {
        return getEventFieldBuilder().addBuilder(
            index, kafka.entity.changelog.schema.Topic.Event.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Event event = 1;
       */
      public java.util.List 
           getEventBuilderList() {
        return getEventFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Event, kafka.entity.changelog.schema.Topic.Event.Builder, kafka.entity.changelog.schema.Topic.EventOrBuilder> 
          getEventFieldBuilder() {
        if (eventBuilder_ == null) {
          eventBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.Event, kafka.entity.changelog.schema.Topic.Event.Builder, kafka.entity.changelog.schema.Topic.EventOrBuilder>(
                  event_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        return eventBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.Events)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.Events)
    private static final kafka.entity.changelog.schema.Topic.Events DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.Events();
    }

    public static kafka.entity.changelog.schema.Topic.Events getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.Events getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicCreatedOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicCreated)
      com.google.protobuf.MessageOrBuilder {

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

    /**
     * int32 partitions = 2;
     */
    int getPartitions();

    /**
     * int32 replicationFactor = 3;
     */
    int getReplicationFactor();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicCreated}
   */
  public  static final class TopicCreated extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicCreated)
      TopicCreatedOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicCreated.newBuilder() to construct.
    private TopicCreated(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicCreated() {
      name_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicCreated();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicCreated(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 16: {

              partitions_ = input.readInt32();
              break;
            }
            case 24: {

              replicationFactor_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicCreated_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicCreated_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicCreated.class, kafka.entity.changelog.schema.Topic.TopicCreated.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 PARTITIONS_FIELD_NUMBER = 2;
    private int partitions_;
    /**
     * int32 partitions = 2;
     */
    public int getPartitions() {
      return partitions_;
    }

    public static final int REPLICATIONFACTOR_FIELD_NUMBER = 3;
    private int replicationFactor_;
    /**
     * int32 replicationFactor = 3;
     */
    public int getReplicationFactor() {
      return replicationFactor_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      if (partitions_ != 0) {
        output.writeInt32(2, partitions_);
      }
      if (replicationFactor_ != 0) {
        output.writeInt32(3, replicationFactor_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    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 (partitions_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, partitions_);
      }
      if (replicationFactor_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, replicationFactor_);
      }
      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 kafka.entity.changelog.schema.Topic.TopicCreated)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicCreated other = (kafka.entity.changelog.schema.Topic.TopicCreated) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (getPartitions()
          != other.getPartitions()) return false;
      if (getReplicationFactor()
          != other.getReplicationFactor()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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) + PARTITIONS_FIELD_NUMBER;
      hash = (53 * hash) + getPartitions();
      hash = (37 * hash) + REPLICATIONFACTOR_FIELD_NUMBER;
      hash = (53 * hash) + getReplicationFactor();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated 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 kafka.entity.changelog.schema.Topic.TopicCreated parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated 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 kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicCreated parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicCreated prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicCreated}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicCreated)
        kafka.entity.changelog.schema.Topic.TopicCreatedOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicCreated_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicCreated_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicCreated.class, kafka.entity.changelog.schema.Topic.TopicCreated.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicCreated.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        partitions_ = 0;

        replicationFactor_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicCreated_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicCreated getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicCreated build() {
        kafka.entity.changelog.schema.Topic.TopicCreated result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicCreated buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicCreated result = new kafka.entity.changelog.schema.Topic.TopicCreated(this);
        result.name_ = name_;
        result.partitions_ = partitions_;
        result.replicationFactor_ = replicationFactor_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicCreated) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicCreated)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicCreated other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicCreated.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (other.getPartitions() != 0) {
          setPartitions(other.getPartitions());
        }
        if (other.getReplicationFactor() != 0) {
          setReplicationFactor(other.getReplicationFactor());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicCreated parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicCreated) 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 int partitions_ ;
      /**
       * int32 partitions = 2;
       */
      public int getPartitions() {
        return partitions_;
      }
      /**
       * int32 partitions = 2;
       */
      public Builder setPartitions(int value) {
        
        partitions_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 partitions = 2;
       */
      public Builder clearPartitions() {
        
        partitions_ = 0;
        onChanged();
        return this;
      }

      private int replicationFactor_ ;
      /**
       * int32 replicationFactor = 3;
       */
      public int getReplicationFactor() {
        return replicationFactor_;
      }
      /**
       * int32 replicationFactor = 3;
       */
      public Builder setReplicationFactor(int value) {
        
        replicationFactor_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 replicationFactor = 3;
       */
      public Builder clearReplicationFactor() {
        
        replicationFactor_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicCreated)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicCreated)
    private static final kafka.entity.changelog.schema.Topic.TopicCreated DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicCreated();
    }

    public static kafka.entity.changelog.schema.Topic.TopicCreated getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicCreated getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicDeletedOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicDeleted)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string name = 1;
     */
    java.lang.String getName();
    /**
     * string name = 1;
     */
    com.google.protobuf.ByteString
        getNameBytes();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicDeleted}
   */
  public  static final class TopicDeleted extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicDeleted)
      TopicDeletedOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicDeleted.newBuilder() to construct.
    private TopicDeleted(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicDeleted() {
      name_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicDeleted();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicDeleted(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicDeleted_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicDeleted_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicDeleted.class, kafka.entity.changelog.schema.Topic.TopicDeleted.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;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

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

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      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 kafka.entity.changelog.schema.Topic.TopicDeleted)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicDeleted other = (kafka.entity.changelog.schema.Topic.TopicDeleted) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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 = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted 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 kafka.entity.changelog.schema.Topic.TopicDeleted parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted 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 kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicDeleted parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicDeleted prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicDeleted}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicDeleted)
        kafka.entity.changelog.schema.Topic.TopicDeletedOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicDeleted_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicDeleted_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicDeleted.class, kafka.entity.changelog.schema.Topic.TopicDeleted.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicDeleted.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicDeleted_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicDeleted getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicDeleted build() {
        kafka.entity.changelog.schema.Topic.TopicDeleted result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicDeleted buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicDeleted result = new kafka.entity.changelog.schema.Topic.TopicDeleted(this);
        result.name_ = name_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicDeleted) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicDeleted)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicDeleted other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicDeleted.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicDeleted parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicDeleted) 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;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicDeleted)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicDeleted)
    private static final kafka.entity.changelog.schema.Topic.TopicDeleted DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicDeleted();
    }

    public static kafka.entity.changelog.schema.Topic.TopicDeleted getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicDeleted getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConfigsAppliedOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.ConfigsApplied)
      com.google.protobuf.MessageOrBuilder {

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

    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    java.util.List 
        getConfigList();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    kafka.entity.changelog.schema.Topic.Config getConfig(int index);
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    int getConfigCount();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    java.util.List 
        getConfigOrBuilderList();
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
        int index);

    /**
     * string username = 3;
     */
    java.lang.String getUsername();
    /**
     * string username = 3;
     */
    com.google.protobuf.ByteString
        getUsernameBytes();

    /**
     * string source = 4;
     */
    java.lang.String getSource();
    /**
     * string source = 4;
     */
    com.google.protobuf.ByteString
        getSourceBytes();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.ConfigsApplied}
   */
  public  static final class ConfigsApplied extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.ConfigsApplied)
      ConfigsAppliedOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ConfigsApplied.newBuilder() to construct.
    private ConfigsApplied(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ConfigsApplied() {
      name_ = "";
      config_ = java.util.Collections.emptyList();
      username_ = "";
      source_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ConfigsApplied();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ConfigsApplied(
        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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                config_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              config_.add(
                  input.readMessage(kafka.entity.changelog.schema.Topic.Config.parser(), extensionRegistry));
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();

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

              source_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          config_ = java.util.Collections.unmodifiableList(config_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigsApplied_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigsApplied_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.ConfigsApplied.class, kafka.entity.changelog.schema.Topic.ConfigsApplied.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 CONFIG_FIELD_NUMBER = 2;
    private java.util.List config_;
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public java.util.List getConfigList() {
      return config_;
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public java.util.List 
        getConfigOrBuilderList() {
      return config_;
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public int getConfigCount() {
      return config_.size();
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public kafka.entity.changelog.schema.Topic.Config getConfig(int index) {
      return config_.get(index);
    }
    /**
     * repeated .kafka.entity.changelog.Config config = 2;
     */
    public kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
        int index) {
      return config_.get(index);
    }

    public static final int USERNAME_FIELD_NUMBER = 3;
    private volatile java.lang.Object username_;
    /**
     * string username = 3;
     */
    public java.lang.String getUsername() {
      java.lang.Object ref = username_;
      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();
        username_ = s;
        return s;
      }
    }
    /**
     * string username = 3;
     */
    public com.google.protobuf.ByteString
        getUsernameBytes() {
      java.lang.Object ref = username_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        username_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SOURCE_FIELD_NUMBER = 4;
    private volatile java.lang.Object source_;
    /**
     * string source = 4;
     */
    public java.lang.String getSource() {
      java.lang.Object ref = source_;
      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();
        source_ = s;
        return s;
      }
    }
    /**
     * string source = 4;
     */
    public com.google.protobuf.ByteString
        getSourceBytes() {
      java.lang.Object ref = source_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        source_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      for (int i = 0; i < config_.size(); i++) {
        output.writeMessage(2, config_.get(i));
      }
      if (!getUsernameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, source_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      for (int i = 0; i < config_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, config_.get(i));
      }
      if (!getUsernameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, username_);
      }
      if (!getSourceBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, source_);
      }
      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 kafka.entity.changelog.schema.Topic.ConfigsApplied)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.ConfigsApplied other = (kafka.entity.changelog.schema.Topic.ConfigsApplied) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (!getConfigList()
          .equals(other.getConfigList())) return false;
      if (!getUsername()
          .equals(other.getUsername())) return false;
      if (!getSource()
          .equals(other.getSource())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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();
      if (getConfigCount() > 0) {
        hash = (37 * hash) + CONFIG_FIELD_NUMBER;
        hash = (53 * hash) + getConfigList().hashCode();
      }
      hash = (37 * hash) + USERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getUsername().hashCode();
      hash = (37 * hash) + SOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getSource().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied 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 kafka.entity.changelog.schema.Topic.ConfigsApplied parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied 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 kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigsApplied parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.ConfigsApplied prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.ConfigsApplied}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.ConfigsApplied)
        kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigsApplied_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigsApplied_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.ConfigsApplied.class, kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.ConfigsApplied.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        if (configBuilder_ == null) {
          config_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          configBuilder_.clear();
        }
        username_ = "";

        source_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigsApplied_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigsApplied getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigsApplied build() {
        kafka.entity.changelog.schema.Topic.ConfigsApplied result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigsApplied buildPartial() {
        kafka.entity.changelog.schema.Topic.ConfigsApplied result = new kafka.entity.changelog.schema.Topic.ConfigsApplied(this);
        int from_bitField0_ = bitField0_;
        result.name_ = name_;
        if (configBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            config_ = java.util.Collections.unmodifiableList(config_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.config_ = config_;
        } else {
          result.config_ = configBuilder_.build();
        }
        result.username_ = username_;
        result.source_ = source_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.ConfigsApplied) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.ConfigsApplied)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.ConfigsApplied other) {
        if (other == kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (configBuilder_ == null) {
          if (!other.config_.isEmpty()) {
            if (config_.isEmpty()) {
              config_ = other.config_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureConfigIsMutable();
              config_.addAll(other.config_);
            }
            onChanged();
          }
        } else {
          if (!other.config_.isEmpty()) {
            if (configBuilder_.isEmpty()) {
              configBuilder_.dispose();
              configBuilder_ = null;
              config_ = other.config_;
              bitField0_ = (bitField0_ & ~0x00000001);
              configBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getConfigFieldBuilder() : null;
            } else {
              configBuilder_.addAllMessages(other.config_);
            }
          }
        }
        if (!other.getUsername().isEmpty()) {
          username_ = other.username_;
          onChanged();
        }
        if (!other.getSource().isEmpty()) {
          source_ = other.source_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.ConfigsApplied parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.ConfigsApplied) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      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.util.List config_ =
        java.util.Collections.emptyList();
      private void ensureConfigIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          config_ = new java.util.ArrayList(config_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder> configBuilder_;

      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List getConfigList() {
        if (configBuilder_ == null) {
          return java.util.Collections.unmodifiableList(config_);
        } else {
          return configBuilder_.getMessageList();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public int getConfigCount() {
        if (configBuilder_ == null) {
          return config_.size();
        } else {
          return configBuilder_.getCount();
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config getConfig(int index) {
        if (configBuilder_ == null) {
          return config_.get(index);
        } else {
          return configBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder setConfig(
          int index, kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.set(index, value);
          onChanged();
        } else {
          configBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder setConfig(
          int index, kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.set(index, builderForValue.build());
          onChanged();
        } else {
          configBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.add(value);
          onChanged();
        } else {
          configBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          int index, kafka.entity.changelog.schema.Topic.Config value) {
        if (configBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureConfigIsMutable();
          config_.add(index, value);
          onChanged();
        } else {
          configBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.add(builderForValue.build());
          onChanged();
        } else {
          configBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addConfig(
          int index, kafka.entity.changelog.schema.Topic.Config.Builder builderForValue) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.add(index, builderForValue.build());
          onChanged();
        } else {
          configBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder addAllConfig(
          java.lang.Iterable values) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, config_);
          onChanged();
        } else {
          configBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder clearConfig() {
        if (configBuilder_ == null) {
          config_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          configBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public Builder removeConfig(int index) {
        if (configBuilder_ == null) {
          ensureConfigIsMutable();
          config_.remove(index);
          onChanged();
        } else {
          configBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder getConfigBuilder(
          int index) {
        return getConfigFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.ConfigOrBuilder getConfigOrBuilder(
          int index) {
        if (configBuilder_ == null) {
          return config_.get(index);  } else {
          return configBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List 
           getConfigOrBuilderList() {
        if (configBuilder_ != null) {
          return configBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(config_);
        }
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder addConfigBuilder() {
        return getConfigFieldBuilder().addBuilder(
            kafka.entity.changelog.schema.Topic.Config.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public kafka.entity.changelog.schema.Topic.Config.Builder addConfigBuilder(
          int index) {
        return getConfigFieldBuilder().addBuilder(
            index, kafka.entity.changelog.schema.Topic.Config.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.Config config = 2;
       */
      public java.util.List 
           getConfigBuilderList() {
        return getConfigFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder> 
          getConfigFieldBuilder() {
        if (configBuilder_ == null) {
          configBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.Config, kafka.entity.changelog.schema.Topic.Config.Builder, kafka.entity.changelog.schema.Topic.ConfigOrBuilder>(
                  config_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          config_ = null;
        }
        return configBuilder_;
      }

      private java.lang.Object username_ = "";
      /**
       * string username = 3;
       */
      public java.lang.String getUsername() {
        java.lang.Object ref = username_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          username_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string username = 3;
       */
      public com.google.protobuf.ByteString
          getUsernameBytes() {
        java.lang.Object ref = username_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          username_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string username = 3;
       */
      public Builder setUsername(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        username_ = value;
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder clearUsername() {
        
        username_ = getDefaultInstance().getUsername();
        onChanged();
        return this;
      }
      /**
       * string username = 3;
       */
      public Builder setUsernameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        username_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object source_ = "";
      /**
       * string source = 4;
       */
      public java.lang.String getSource() {
        java.lang.Object ref = source_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          source_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string source = 4;
       */
      public com.google.protobuf.ByteString
          getSourceBytes() {
        java.lang.Object ref = source_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          source_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string source = 4;
       */
      public Builder setSource(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        source_ = value;
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder clearSource() {
        
        source_ = getDefaultInstance().getSource();
        onChanged();
        return this;
      }
      /**
       * string source = 4;
       */
      public Builder setSourceBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        source_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.ConfigsApplied)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.ConfigsApplied)
    private static final kafka.entity.changelog.schema.Topic.ConfigsApplied DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.ConfigsApplied();
    }

    public static kafka.entity.changelog.schema.Topic.ConfigsApplied getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.ConfigsApplied getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConfigEventOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.ConfigEvent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    boolean hasConfigApplied();
    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    kafka.entity.changelog.schema.Topic.ConfigsApplied getConfigApplied();
    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder getConfigAppliedOrBuilder();

    public kafka.entity.changelog.schema.Topic.ConfigEvent.EventCase getEventCase();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.ConfigEvent}
   */
  public  static final class ConfigEvent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.ConfigEvent)
      ConfigEventOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ConfigEvent.newBuilder() to construct.
    private ConfigEvent(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ConfigEvent() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ConfigEvent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ConfigEvent(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 18: {
              kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder subBuilder = null;
              if (eventCase_ == 2) {
                subBuilder = ((kafka.entity.changelog.schema.Topic.ConfigsApplied) event_).toBuilder();
              }
              event_ =
                  input.readMessage(kafka.entity.changelog.schema.Topic.ConfigsApplied.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((kafka.entity.changelog.schema.Topic.ConfigsApplied) event_);
                event_ = subBuilder.buildPartial();
              }
              eventCase_ = 2;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.ConfigEvent.class, kafka.entity.changelog.schema.Topic.ConfigEvent.Builder.class);
    }

    private int eventCase_ = 0;
    private java.lang.Object event_;
    public enum EventCase
        implements com.google.protobuf.Internal.EnumLite {
      CONFIGAPPLIED(2),
      EVENT_NOT_SET(0);
      private final int value;
      private EventCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static EventCase valueOf(int value) {
        return forNumber(value);
      }

      public static EventCase forNumber(int value) {
        switch (value) {
          case 2: return CONFIGAPPLIED;
          case 0: return EVENT_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public EventCase
    getEventCase() {
      return EventCase.forNumber(
          eventCase_);
    }

    public static final int CONFIGAPPLIED_FIELD_NUMBER = 2;
    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    public boolean hasConfigApplied() {
      return eventCase_ == 2;
    }
    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    public kafka.entity.changelog.schema.Topic.ConfigsApplied getConfigApplied() {
      if (eventCase_ == 2) {
         return (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_;
      }
      return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
    }
    /**
     * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
     */
    public kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder getConfigAppliedOrBuilder() {
      if (eventCase_ == 2) {
         return (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_;
      }
      return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (eventCase_ == 2) {
        output.writeMessage(2, (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (eventCase_ == 2) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_);
      }
      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 kafka.entity.changelog.schema.Topic.ConfigEvent)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.ConfigEvent other = (kafka.entity.changelog.schema.Topic.ConfigEvent) obj;

      if (!getEventCase().equals(other.getEventCase())) return false;
      switch (eventCase_) {
        case 2:
          if (!getConfigApplied()
              .equals(other.getConfigApplied())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      switch (eventCase_) {
        case 2:
          hash = (37 * hash) + CONFIGAPPLIED_FIELD_NUMBER;
          hash = (53 * hash) + getConfigApplied().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent 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 kafka.entity.changelog.schema.Topic.ConfigEvent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent 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 kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.ConfigEvent parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.ConfigEvent prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.ConfigEvent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.ConfigEvent)
        kafka.entity.changelog.schema.Topic.ConfigEventOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigEvent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigEvent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.ConfigEvent.class, kafka.entity.changelog.schema.Topic.ConfigEvent.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.ConfigEvent.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        eventCase_ = 0;
        event_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_ConfigEvent_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigEvent getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigEvent build() {
        kafka.entity.changelog.schema.Topic.ConfigEvent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.ConfigEvent buildPartial() {
        kafka.entity.changelog.schema.Topic.ConfigEvent result = new kafka.entity.changelog.schema.Topic.ConfigEvent(this);
        if (eventCase_ == 2) {
          if (configAppliedBuilder_ == null) {
            result.event_ = event_;
          } else {
            result.event_ = configAppliedBuilder_.build();
          }
        }
        result.eventCase_ = eventCase_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.ConfigEvent) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.ConfigEvent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.ConfigEvent other) {
        if (other == kafka.entity.changelog.schema.Topic.ConfigEvent.getDefaultInstance()) return this;
        switch (other.getEventCase()) {
          case CONFIGAPPLIED: {
            mergeConfigApplied(other.getConfigApplied());
            break;
          }
          case EVENT_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.ConfigEvent parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.ConfigEvent) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int eventCase_ = 0;
      private java.lang.Object event_;
      public EventCase
          getEventCase() {
        return EventCase.forNumber(
            eventCase_);
      }

      public Builder clearEvent() {
        eventCase_ = 0;
        event_ = null;
        onChanged();
        return this;
      }


      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ConfigsApplied, kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder, kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder> configAppliedBuilder_;
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public boolean hasConfigApplied() {
        return eventCase_ == 2;
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public kafka.entity.changelog.schema.Topic.ConfigsApplied getConfigApplied() {
        if (configAppliedBuilder_ == null) {
          if (eventCase_ == 2) {
            return (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_;
          }
          return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
        } else {
          if (eventCase_ == 2) {
            return configAppliedBuilder_.getMessage();
          }
          return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public Builder setConfigApplied(kafka.entity.changelog.schema.Topic.ConfigsApplied value) {
        if (configAppliedBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          event_ = value;
          onChanged();
        } else {
          configAppliedBuilder_.setMessage(value);
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public Builder setConfigApplied(
          kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder builderForValue) {
        if (configAppliedBuilder_ == null) {
          event_ = builderForValue.build();
          onChanged();
        } else {
          configAppliedBuilder_.setMessage(builderForValue.build());
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public Builder mergeConfigApplied(kafka.entity.changelog.schema.Topic.ConfigsApplied value) {
        if (configAppliedBuilder_ == null) {
          if (eventCase_ == 2 &&
              event_ != kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance()) {
            event_ = kafka.entity.changelog.schema.Topic.ConfigsApplied.newBuilder((kafka.entity.changelog.schema.Topic.ConfigsApplied) event_)
                .mergeFrom(value).buildPartial();
          } else {
            event_ = value;
          }
          onChanged();
        } else {
          if (eventCase_ == 2) {
            configAppliedBuilder_.mergeFrom(value);
          }
          configAppliedBuilder_.setMessage(value);
        }
        eventCase_ = 2;
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public Builder clearConfigApplied() {
        if (configAppliedBuilder_ == null) {
          if (eventCase_ == 2) {
            eventCase_ = 0;
            event_ = null;
            onChanged();
          }
        } else {
          if (eventCase_ == 2) {
            eventCase_ = 0;
            event_ = null;
          }
          configAppliedBuilder_.clear();
        }
        return this;
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder getConfigAppliedBuilder() {
        return getConfigAppliedFieldBuilder().getBuilder();
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      public kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder getConfigAppliedOrBuilder() {
        if ((eventCase_ == 2) && (configAppliedBuilder_ != null)) {
          return configAppliedBuilder_.getMessageOrBuilder();
        } else {
          if (eventCase_ == 2) {
            return (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_;
          }
          return kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
        }
      }
      /**
       * .kafka.entity.changelog.ConfigsApplied configApplied = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.ConfigsApplied, kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder, kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder> 
          getConfigAppliedFieldBuilder() {
        if (configAppliedBuilder_ == null) {
          if (!(eventCase_ == 2)) {
            event_ = kafka.entity.changelog.schema.Topic.ConfigsApplied.getDefaultInstance();
          }
          configAppliedBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.ConfigsApplied, kafka.entity.changelog.schema.Topic.ConfigsApplied.Builder, kafka.entity.changelog.schema.Topic.ConfigsAppliedOrBuilder>(
                  (kafka.entity.changelog.schema.Topic.ConfigsApplied) event_,
                  getParentForChildren(),
                  isClean());
          event_ = null;
        }
        eventCase_ = 2;
        onChanged();;
        return configAppliedBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.ConfigEvent)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.ConfigEvent)
    private static final kafka.entity.changelog.schema.Topic.ConfigEvent DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.ConfigEvent();
    }

    public static kafka.entity.changelog.schema.Topic.ConfigEvent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.ConfigEvent getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ConfigOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.Config)
      com.google.protobuf.MessageOrBuilder {

    /**
     * string key = 1;
     */
    java.lang.String getKey();
    /**
     * string key = 1;
     */
    com.google.protobuf.ByteString
        getKeyBytes();

    /**
     * string value = 2;
     */
    java.lang.String getValue();
    /**
     * string value = 2;
     */
    com.google.protobuf.ByteString
        getValueBytes();

    /**
     * .kafka.entity.changelog.Config.Action action = 3;
     */
    int getActionValue();
    /**
     * .kafka.entity.changelog.Config.Action action = 3;
     */
    kafka.entity.changelog.schema.Topic.Config.Action getAction();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.Config}
   */
  public  static final class Config extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.Config)
      ConfigOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Config.newBuilder() to construct.
    private Config(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Config() {
      key_ = "";
      value_ = "";
      action_ = 0;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Config();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Config(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

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

              value_ = s;
              break;
            }
            case 24: {
              int rawValue = input.readEnum();

              action_ = rawValue;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Config_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Config_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.Config.class, kafka.entity.changelog.schema.Topic.Config.Builder.class);
    }

    /**
     * Protobuf enum {@code kafka.entity.changelog.Config.Action}
     */
    public enum Action
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * ADD = 0;
       */
      ADD(0),
      /**
       * DELETE = 1;
       */
      DELETE(1),
      UNRECOGNIZED(-1),
      ;

      /**
       * ADD = 0;
       */
      public static final int ADD_VALUE = 0;
      /**
       * DELETE = 1;
       */
      public static final int DELETE_VALUE = 1;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }

      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Action valueOf(int value) {
        return forNumber(value);
      }

      public static Action forNumber(int value) {
        switch (value) {
          case 0: return ADD;
          case 1: return DELETE;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Action> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap() {
              public Action findValueByNumber(int number) {
                return Action.forNumber(number);
              }
            };

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.Config.getDescriptor().getEnumTypes().get(0);
      }

      private static final Action[] VALUES = values();

      public static Action valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }

      private final int value;

      private Action(int value) {
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:kafka.entity.changelog.Config.Action)
    }

    public static final int KEY_FIELD_NUMBER = 1;
    private volatile java.lang.Object key_;
    /**
     * string key = 1;
     */
    public java.lang.String getKey() {
      java.lang.Object ref = key_;
      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();
        key_ = s;
        return s;
      }
    }
    /**
     * string key = 1;
     */
    public com.google.protobuf.ByteString
        getKeyBytes() {
      java.lang.Object ref = key_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        key_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int VALUE_FIELD_NUMBER = 2;
    private volatile java.lang.Object value_;
    /**
     * string value = 2;
     */
    public java.lang.String getValue() {
      java.lang.Object ref = value_;
      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();
        value_ = s;
        return s;
      }
    }
    /**
     * string value = 2;
     */
    public com.google.protobuf.ByteString
        getValueBytes() {
      java.lang.Object ref = value_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        value_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ACTION_FIELD_NUMBER = 3;
    private int action_;
    /**
     * .kafka.entity.changelog.Config.Action action = 3;
     */
    public int getActionValue() {
      return action_;
    }
    /**
     * .kafka.entity.changelog.Config.Action action = 3;
     */
    public kafka.entity.changelog.schema.Topic.Config.Action getAction() {
      @SuppressWarnings("deprecation")
      kafka.entity.changelog.schema.Topic.Config.Action result = kafka.entity.changelog.schema.Topic.Config.Action.valueOf(action_);
      return result == null ? kafka.entity.changelog.schema.Topic.Config.Action.UNRECOGNIZED : result;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getKeyBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_);
      }
      if (!getValueBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, value_);
      }
      if (action_ != kafka.entity.changelog.schema.Topic.Config.Action.ADD.getNumber()) {
        output.writeEnum(3, action_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getKeyBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_);
      }
      if (!getValueBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, value_);
      }
      if (action_ != kafka.entity.changelog.schema.Topic.Config.Action.ADD.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(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 kafka.entity.changelog.schema.Topic.Config)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.Config other = (kafka.entity.changelog.schema.Topic.Config) obj;

      if (!getKey()
          .equals(other.getKey())) return false;
      if (!getValue()
          .equals(other.getValue())) return false;
      if (action_ != other.action_) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + KEY_FIELD_NUMBER;
      hash = (53 * hash) + getKey().hashCode();
      hash = (37 * hash) + VALUE_FIELD_NUMBER;
      hash = (53 * hash) + getValue().hashCode();
      hash = (37 * hash) + ACTION_FIELD_NUMBER;
      hash = (53 * hash) + action_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Config 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 kafka.entity.changelog.schema.Topic.Config parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Config 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 kafka.entity.changelog.schema.Topic.Config parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.Config parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.Config prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.Config}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.Config)
        kafka.entity.changelog.schema.Topic.ConfigOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Config_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Config_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.Config.class, kafka.entity.changelog.schema.Topic.Config.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.Config.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        key_ = "";

        value_ = "";

        action_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_Config_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Config getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.Config.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Config build() {
        kafka.entity.changelog.schema.Topic.Config result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.Config buildPartial() {
        kafka.entity.changelog.schema.Topic.Config result = new kafka.entity.changelog.schema.Topic.Config(this);
        result.key_ = key_;
        result.value_ = value_;
        result.action_ = action_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.Config) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.Config)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.Config other) {
        if (other == kafka.entity.changelog.schema.Topic.Config.getDefaultInstance()) return this;
        if (!other.getKey().isEmpty()) {
          key_ = other.key_;
          onChanged();
        }
        if (!other.getValue().isEmpty()) {
          value_ = other.value_;
          onChanged();
        }
        if (other.action_ != 0) {
          setActionValue(other.getActionValue());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.Config parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.Config) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object key_ = "";
      /**
       * string key = 1;
       */
      public java.lang.String getKey() {
        java.lang.Object ref = key_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          key_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string key = 1;
       */
      public com.google.protobuf.ByteString
          getKeyBytes() {
        java.lang.Object ref = key_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          key_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string key = 1;
       */
      public Builder setKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        key_ = value;
        onChanged();
        return this;
      }
      /**
       * string key = 1;
       */
      public Builder clearKey() {
        
        key_ = getDefaultInstance().getKey();
        onChanged();
        return this;
      }
      /**
       * string key = 1;
       */
      public Builder setKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        key_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object value_ = "";
      /**
       * string value = 2;
       */
      public java.lang.String getValue() {
        java.lang.Object ref = value_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          value_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string value = 2;
       */
      public com.google.protobuf.ByteString
          getValueBytes() {
        java.lang.Object ref = value_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          value_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string value = 2;
       */
      public Builder setValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        value_ = value;
        onChanged();
        return this;
      }
      /**
       * string value = 2;
       */
      public Builder clearValue() {
        
        value_ = getDefaultInstance().getValue();
        onChanged();
        return this;
      }
      /**
       * string value = 2;
       */
      public Builder setValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        value_ = value;
        onChanged();
        return this;
      }

      private int action_ = 0;
      /**
       * .kafka.entity.changelog.Config.Action action = 3;
       */
      public int getActionValue() {
        return action_;
      }
      /**
       * .kafka.entity.changelog.Config.Action action = 3;
       */
      public Builder setActionValue(int value) {
        action_ = value;
        onChanged();
        return this;
      }
      /**
       * .kafka.entity.changelog.Config.Action action = 3;
       */
      public kafka.entity.changelog.schema.Topic.Config.Action getAction() {
        @SuppressWarnings("deprecation")
        kafka.entity.changelog.schema.Topic.Config.Action result = kafka.entity.changelog.schema.Topic.Config.Action.valueOf(action_);
        return result == null ? kafka.entity.changelog.schema.Topic.Config.Action.UNRECOGNIZED : result;
      }
      /**
       * .kafka.entity.changelog.Config.Action action = 3;
       */
      public Builder setAction(kafka.entity.changelog.schema.Topic.Config.Action value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        action_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * .kafka.entity.changelog.Config.Action action = 3;
       */
      public Builder clearAction() {
        
        action_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.Config)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.Config)
    private static final kafka.entity.changelog.schema.Topic.Config DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.Config();
    }

    public static kafka.entity.changelog.schema.Topic.Config getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.Config getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicTopologyOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicTopology)
      com.google.protobuf.MessageOrBuilder {

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

    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    java.util.List 
        getPartitionList();
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicPartition getPartition(int index);
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    int getPartitionCount();
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    java.util.List 
        getPartitionOrBuilderList();
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder getPartitionOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicTopology}
   */
  public  static final class TopicTopology extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicTopology)
      TopicTopologyOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicTopology.newBuilder() to construct.
    private TopicTopology(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicTopology() {
      name_ = "";
      partition_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicTopology();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicTopology(
        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;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                partition_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              partition_.add(
                  input.readMessage(kafka.entity.changelog.schema.Topic.TopicPartition.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          partition_ = java.util.Collections.unmodifiableList(partition_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicTopology_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicTopology_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicTopology.class, kafka.entity.changelog.schema.Topic.TopicTopology.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 PARTITION_FIELD_NUMBER = 2;
    private java.util.List partition_;
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    public java.util.List getPartitionList() {
      return partition_;
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    public java.util.List 
        getPartitionOrBuilderList() {
      return partition_;
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    public int getPartitionCount() {
      return partition_.size();
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicPartition getPartition(int index) {
      return partition_.get(index);
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartition partition = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder getPartitionOrBuilder(
        int index) {
      return partition_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      for (int i = 0; i < partition_.size(); i++) {
        output.writeMessage(2, partition_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      for (int i = 0; i < partition_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, partition_.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 kafka.entity.changelog.schema.Topic.TopicTopology)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicTopology other = (kafka.entity.changelog.schema.Topic.TopicTopology) obj;

      if (!getName()
          .equals(other.getName())) return false;
      if (!getPartitionList()
          .equals(other.getPartitionList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @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();
      if (getPartitionCount() > 0) {
        hash = (37 * hash) + PARTITION_FIELD_NUMBER;
        hash = (53 * hash) + getPartitionList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology 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 kafka.entity.changelog.schema.Topic.TopicTopology parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology 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 kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicTopology parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicTopology prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicTopology}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicTopology)
        kafka.entity.changelog.schema.Topic.TopicTopologyOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicTopology_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicTopology_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicTopology.class, kafka.entity.changelog.schema.Topic.TopicTopology.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicTopology.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        if (partitionBuilder_ == null) {
          partition_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          partitionBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicTopology_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicTopology getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicTopology.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicTopology build() {
        kafka.entity.changelog.schema.Topic.TopicTopology result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicTopology buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicTopology result = new kafka.entity.changelog.schema.Topic.TopicTopology(this);
        int from_bitField0_ = bitField0_;
        result.name_ = name_;
        if (partitionBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            partition_ = java.util.Collections.unmodifiableList(partition_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.partition_ = partition_;
        } else {
          result.partition_ = partitionBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicTopology) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicTopology)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicTopology other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicTopology.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (partitionBuilder_ == null) {
          if (!other.partition_.isEmpty()) {
            if (partition_.isEmpty()) {
              partition_ = other.partition_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensurePartitionIsMutable();
              partition_.addAll(other.partition_);
            }
            onChanged();
          }
        } else {
          if (!other.partition_.isEmpty()) {
            if (partitionBuilder_.isEmpty()) {
              partitionBuilder_.dispose();
              partitionBuilder_ = null;
              partition_ = other.partition_;
              bitField0_ = (bitField0_ & ~0x00000001);
              partitionBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getPartitionFieldBuilder() : null;
            } else {
              partitionBuilder_.addAllMessages(other.partition_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicTopology parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicTopology) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      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.util.List partition_ =
        java.util.Collections.emptyList();
      private void ensurePartitionIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          partition_ = new java.util.ArrayList(partition_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicPartition, kafka.entity.changelog.schema.Topic.TopicPartition.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder> partitionBuilder_;

      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public java.util.List getPartitionList() {
        if (partitionBuilder_ == null) {
          return java.util.Collections.unmodifiableList(partition_);
        } else {
          return partitionBuilder_.getMessageList();
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public int getPartitionCount() {
        if (partitionBuilder_ == null) {
          return partition_.size();
        } else {
          return partitionBuilder_.getCount();
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartition getPartition(int index) {
        if (partitionBuilder_ == null) {
          return partition_.get(index);
        } else {
          return partitionBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder setPartition(
          int index, kafka.entity.changelog.schema.Topic.TopicPartition value) {
        if (partitionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePartitionIsMutable();
          partition_.set(index, value);
          onChanged();
        } else {
          partitionBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder setPartition(
          int index, kafka.entity.changelog.schema.Topic.TopicPartition.Builder builderForValue) {
        if (partitionBuilder_ == null) {
          ensurePartitionIsMutable();
          partition_.set(index, builderForValue.build());
          onChanged();
        } else {
          partitionBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder addPartition(kafka.entity.changelog.schema.Topic.TopicPartition value) {
        if (partitionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePartitionIsMutable();
          partition_.add(value);
          onChanged();
        } else {
          partitionBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder addPartition(
          int index, kafka.entity.changelog.schema.Topic.TopicPartition value) {
        if (partitionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePartitionIsMutable();
          partition_.add(index, value);
          onChanged();
        } else {
          partitionBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder addPartition(
          kafka.entity.changelog.schema.Topic.TopicPartition.Builder builderForValue) {
        if (partitionBuilder_ == null) {
          ensurePartitionIsMutable();
          partition_.add(builderForValue.build());
          onChanged();
        } else {
          partitionBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder addPartition(
          int index, kafka.entity.changelog.schema.Topic.TopicPartition.Builder builderForValue) {
        if (partitionBuilder_ == null) {
          ensurePartitionIsMutable();
          partition_.add(index, builderForValue.build());
          onChanged();
        } else {
          partitionBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder addAllPartition(
          java.lang.Iterable values) {
        if (partitionBuilder_ == null) {
          ensurePartitionIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, partition_);
          onChanged();
        } else {
          partitionBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder clearPartition() {
        if (partitionBuilder_ == null) {
          partition_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          partitionBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public Builder removePartition(int index) {
        if (partitionBuilder_ == null) {
          ensurePartitionIsMutable();
          partition_.remove(index);
          onChanged();
        } else {
          partitionBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartition.Builder getPartitionBuilder(
          int index) {
        return getPartitionFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder getPartitionOrBuilder(
          int index) {
        if (partitionBuilder_ == null) {
          return partition_.get(index);  } else {
          return partitionBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public java.util.List 
           getPartitionOrBuilderList() {
        if (partitionBuilder_ != null) {
          return partitionBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(partition_);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartition.Builder addPartitionBuilder() {
        return getPartitionFieldBuilder().addBuilder(
            kafka.entity.changelog.schema.Topic.TopicPartition.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartition.Builder addPartitionBuilder(
          int index) {
        return getPartitionFieldBuilder().addBuilder(
            index, kafka.entity.changelog.schema.Topic.TopicPartition.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartition partition = 2;
       */
      public java.util.List 
           getPartitionBuilderList() {
        return getPartitionFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicPartition, kafka.entity.changelog.schema.Topic.TopicPartition.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder> 
          getPartitionFieldBuilder() {
        if (partitionBuilder_ == null) {
          partitionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.TopicPartition, kafka.entity.changelog.schema.Topic.TopicPartition.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder>(
                  partition_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          partition_ = null;
        }
        return partitionBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicTopology)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicTopology)
    private static final kafka.entity.changelog.schema.Topic.TopicTopology DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicTopology();
    }

    public static kafka.entity.changelog.schema.Topic.TopicTopology getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicTopology getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicPartitionOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicPartition)
      com.google.protobuf.MessageOrBuilder {

    /**
     * int32 partition = 1;
     */
    int getPartition();

    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    java.util.List 
        getReplicaList();
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicPartitionReplica getReplica(int index);
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    int getReplicaCount();
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    java.util.List 
        getReplicaOrBuilderList();
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder getReplicaOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicPartition}
   */
  public  static final class TopicPartition extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicPartition)
      TopicPartitionOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicPartition.newBuilder() to construct.
    private TopicPartition(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicPartition() {
      replica_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicPartition();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicPartition(
        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;
            case 8: {

              partition_ = input.readInt32();
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                replica_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              replica_.add(
                  input.readMessage(kafka.entity.changelog.schema.Topic.TopicPartitionReplica.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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_ & 0x00000001) != 0)) {
          replica_ = java.util.Collections.unmodifiableList(replica_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartition_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartition_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicPartition.class, kafka.entity.changelog.schema.Topic.TopicPartition.Builder.class);
    }

    public static final int PARTITION_FIELD_NUMBER = 1;
    private int partition_;
    /**
     * int32 partition = 1;
     */
    public int getPartition() {
      return partition_;
    }

    public static final int REPLICA_FIELD_NUMBER = 2;
    private java.util.List replica_;
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    public java.util.List getReplicaList() {
      return replica_;
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    public java.util.List 
        getReplicaOrBuilderList() {
      return replica_;
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    public int getReplicaCount() {
      return replica_.size();
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicPartitionReplica getReplica(int index) {
      return replica_.get(index);
    }
    /**
     * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
     */
    public kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder getReplicaOrBuilder(
        int index) {
      return replica_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (partition_ != 0) {
        output.writeInt32(1, partition_);
      }
      for (int i = 0; i < replica_.size(); i++) {
        output.writeMessage(2, replica_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (partition_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, partition_);
      }
      for (int i = 0; i < replica_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, replica_.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 kafka.entity.changelog.schema.Topic.TopicPartition)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicPartition other = (kafka.entity.changelog.schema.Topic.TopicPartition) obj;

      if (getPartition()
          != other.getPartition()) return false;
      if (!getReplicaList()
          .equals(other.getReplicaList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PARTITION_FIELD_NUMBER;
      hash = (53 * hash) + getPartition();
      if (getReplicaCount() > 0) {
        hash = (37 * hash) + REPLICA_FIELD_NUMBER;
        hash = (53 * hash) + getReplicaList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition 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 kafka.entity.changelog.schema.Topic.TopicPartition parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition 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 kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartition parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicPartition prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicPartition}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicPartition)
        kafka.entity.changelog.schema.Topic.TopicPartitionOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartition_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartition_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicPartition.class, kafka.entity.changelog.schema.Topic.TopicPartition.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicPartition.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getReplicaFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        partition_ = 0;

        if (replicaBuilder_ == null) {
          replica_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          replicaBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartition_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartition getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicPartition.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartition build() {
        kafka.entity.changelog.schema.Topic.TopicPartition result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartition buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicPartition result = new kafka.entity.changelog.schema.Topic.TopicPartition(this);
        int from_bitField0_ = bitField0_;
        result.partition_ = partition_;
        if (replicaBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            replica_ = java.util.Collections.unmodifiableList(replica_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.replica_ = replica_;
        } else {
          result.replica_ = replicaBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicPartition) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicPartition)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicPartition other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicPartition.getDefaultInstance()) return this;
        if (other.getPartition() != 0) {
          setPartition(other.getPartition());
        }
        if (replicaBuilder_ == null) {
          if (!other.replica_.isEmpty()) {
            if (replica_.isEmpty()) {
              replica_ = other.replica_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureReplicaIsMutable();
              replica_.addAll(other.replica_);
            }
            onChanged();
          }
        } else {
          if (!other.replica_.isEmpty()) {
            if (replicaBuilder_.isEmpty()) {
              replicaBuilder_.dispose();
              replicaBuilder_ = null;
              replica_ = other.replica_;
              bitField0_ = (bitField0_ & ~0x00000001);
              replicaBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getReplicaFieldBuilder() : null;
            } else {
              replicaBuilder_.addAllMessages(other.replica_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicPartition parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicPartition) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int partition_ ;
      /**
       * int32 partition = 1;
       */
      public int getPartition() {
        return partition_;
      }
      /**
       * int32 partition = 1;
       */
      public Builder setPartition(int value) {
        
        partition_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 partition = 1;
       */
      public Builder clearPartition() {
        
        partition_ = 0;
        onChanged();
        return this;
      }

      private java.util.List replica_ =
        java.util.Collections.emptyList();
      private void ensureReplicaIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          replica_ = new java.util.ArrayList(replica_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicPartitionReplica, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder> replicaBuilder_;

      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public java.util.List getReplicaList() {
        if (replicaBuilder_ == null) {
          return java.util.Collections.unmodifiableList(replica_);
        } else {
          return replicaBuilder_.getMessageList();
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public int getReplicaCount() {
        if (replicaBuilder_ == null) {
          return replica_.size();
        } else {
          return replicaBuilder_.getCount();
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica getReplica(int index) {
        if (replicaBuilder_ == null) {
          return replica_.get(index);
        } else {
          return replicaBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder setReplica(
          int index, kafka.entity.changelog.schema.Topic.TopicPartitionReplica value) {
        if (replicaBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureReplicaIsMutable();
          replica_.set(index, value);
          onChanged();
        } else {
          replicaBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder setReplica(
          int index, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder builderForValue) {
        if (replicaBuilder_ == null) {
          ensureReplicaIsMutable();
          replica_.set(index, builderForValue.build());
          onChanged();
        } else {
          replicaBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder addReplica(kafka.entity.changelog.schema.Topic.TopicPartitionReplica value) {
        if (replicaBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureReplicaIsMutable();
          replica_.add(value);
          onChanged();
        } else {
          replicaBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder addReplica(
          int index, kafka.entity.changelog.schema.Topic.TopicPartitionReplica value) {
        if (replicaBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureReplicaIsMutable();
          replica_.add(index, value);
          onChanged();
        } else {
          replicaBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder addReplica(
          kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder builderForValue) {
        if (replicaBuilder_ == null) {
          ensureReplicaIsMutable();
          replica_.add(builderForValue.build());
          onChanged();
        } else {
          replicaBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder addReplica(
          int index, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder builderForValue) {
        if (replicaBuilder_ == null) {
          ensureReplicaIsMutable();
          replica_.add(index, builderForValue.build());
          onChanged();
        } else {
          replicaBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder addAllReplica(
          java.lang.Iterable values) {
        if (replicaBuilder_ == null) {
          ensureReplicaIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, replica_);
          onChanged();
        } else {
          replicaBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder clearReplica() {
        if (replicaBuilder_ == null) {
          replica_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          replicaBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public Builder removeReplica(int index) {
        if (replicaBuilder_ == null) {
          ensureReplicaIsMutable();
          replica_.remove(index);
          onChanged();
        } else {
          replicaBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder getReplicaBuilder(
          int index) {
        return getReplicaFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder getReplicaOrBuilder(
          int index) {
        if (replicaBuilder_ == null) {
          return replica_.get(index);  } else {
          return replicaBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public java.util.List 
           getReplicaOrBuilderList() {
        if (replicaBuilder_ != null) {
          return replicaBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(replica_);
        }
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder addReplicaBuilder() {
        return getReplicaFieldBuilder().addBuilder(
            kafka.entity.changelog.schema.Topic.TopicPartitionReplica.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder addReplicaBuilder(
          int index) {
        return getReplicaFieldBuilder().addBuilder(
            index, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.getDefaultInstance());
      }
      /**
       * repeated .kafka.entity.changelog.TopicPartitionReplica replica = 2;
       */
      public java.util.List 
           getReplicaBuilderList() {
        return getReplicaFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          kafka.entity.changelog.schema.Topic.TopicPartitionReplica, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder> 
          getReplicaFieldBuilder() {
        if (replicaBuilder_ == null) {
          replicaBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              kafka.entity.changelog.schema.Topic.TopicPartitionReplica, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder, kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder>(
                  replica_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          replica_ = null;
        }
        return replicaBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicPartition)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicPartition)
    private static final kafka.entity.changelog.schema.Topic.TopicPartition DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicPartition();
    }

    public static kafka.entity.changelog.schema.Topic.TopicPartition getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicPartition getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TopicPartitionReplicaOrBuilder extends
      // @@protoc_insertion_point(interface_extends:kafka.entity.changelog.TopicPartitionReplica)
      com.google.protobuf.MessageOrBuilder {

    /**
     * int32 nodeId = 1;
     */
    int getNodeId();

    /**
     * bool leader = 2;
     */
    boolean getLeader();
  }
  /**
   * Protobuf type {@code kafka.entity.changelog.TopicPartitionReplica}
   */
  public  static final class TopicPartitionReplica extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:kafka.entity.changelog.TopicPartitionReplica)
      TopicPartitionReplicaOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TopicPartitionReplica.newBuilder() to construct.
    private TopicPartitionReplica(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private TopicPartitionReplica() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TopicPartitionReplica();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TopicPartitionReplica(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      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;
            case 8: {

              nodeId_ = input.readInt32();
              break;
            }
            case 16: {

              leader_ = input.readBool();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              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 kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartitionReplica_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              kafka.entity.changelog.schema.Topic.TopicPartitionReplica.class, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder.class);
    }

    public static final int NODEID_FIELD_NUMBER = 1;
    private int nodeId_;
    /**
     * int32 nodeId = 1;
     */
    public int getNodeId() {
      return nodeId_;
    }

    public static final int LEADER_FIELD_NUMBER = 2;
    private boolean leader_;
    /**
     * bool leader = 2;
     */
    public boolean getLeader() {
      return leader_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (nodeId_ != 0) {
        output.writeInt32(1, nodeId_);
      }
      if (leader_ != false) {
        output.writeBool(2, leader_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (nodeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, nodeId_);
      }
      if (leader_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, leader_);
      }
      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 kafka.entity.changelog.schema.Topic.TopicPartitionReplica)) {
        return super.equals(obj);
      }
      kafka.entity.changelog.schema.Topic.TopicPartitionReplica other = (kafka.entity.changelog.schema.Topic.TopicPartitionReplica) obj;

      if (getNodeId()
          != other.getNodeId()) return false;
      if (getLeader()
          != other.getLeader()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + NODEID_FIELD_NUMBER;
      hash = (53 * hash) + getNodeId();
      hash = (37 * hash) + LEADER_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getLeader());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica 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 kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica 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 kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(kafka.entity.changelog.schema.Topic.TopicPartitionReplica prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    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 kafka.entity.changelog.TopicPartitionReplica}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:kafka.entity.changelog.TopicPartitionReplica)
        kafka.entity.changelog.schema.Topic.TopicPartitionReplicaOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartitionReplica_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                kafka.entity.changelog.schema.Topic.TopicPartitionReplica.class, kafka.entity.changelog.schema.Topic.TopicPartitionReplica.Builder.class);
      }

      // Construct using kafka.entity.changelog.schema.Topic.TopicPartitionReplica.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        nodeId_ = 0;

        leader_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return kafka.entity.changelog.schema.Topic.internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica getDefaultInstanceForType() {
        return kafka.entity.changelog.schema.Topic.TopicPartitionReplica.getDefaultInstance();
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica build() {
        kafka.entity.changelog.schema.Topic.TopicPartitionReplica result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public kafka.entity.changelog.schema.Topic.TopicPartitionReplica buildPartial() {
        kafka.entity.changelog.schema.Topic.TopicPartitionReplica result = new kafka.entity.changelog.schema.Topic.TopicPartitionReplica(this);
        result.nodeId_ = nodeId_;
        result.leader_ = leader_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof kafka.entity.changelog.schema.Topic.TopicPartitionReplica) {
          return mergeFrom((kafka.entity.changelog.schema.Topic.TopicPartitionReplica)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(kafka.entity.changelog.schema.Topic.TopicPartitionReplica other) {
        if (other == kafka.entity.changelog.schema.Topic.TopicPartitionReplica.getDefaultInstance()) return this;
        if (other.getNodeId() != 0) {
          setNodeId(other.getNodeId());
        }
        if (other.getLeader() != false) {
          setLeader(other.getLeader());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        kafka.entity.changelog.schema.Topic.TopicPartitionReplica parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (kafka.entity.changelog.schema.Topic.TopicPartitionReplica) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int nodeId_ ;
      /**
       * int32 nodeId = 1;
       */
      public int getNodeId() {
        return nodeId_;
      }
      /**
       * int32 nodeId = 1;
       */
      public Builder setNodeId(int value) {
        
        nodeId_ = value;
        onChanged();
        return this;
      }
      /**
       * int32 nodeId = 1;
       */
      public Builder clearNodeId() {
        
        nodeId_ = 0;
        onChanged();
        return this;
      }

      private boolean leader_ ;
      /**
       * bool leader = 2;
       */
      public boolean getLeader() {
        return leader_;
      }
      /**
       * bool leader = 2;
       */
      public Builder setLeader(boolean value) {
        
        leader_ = value;
        onChanged();
        return this;
      }
      /**
       * bool leader = 2;
       */
      public Builder clearLeader() {
        
        leader_ = false;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:kafka.entity.changelog.TopicPartitionReplica)
    }

    // @@protoc_insertion_point(class_scope:kafka.entity.changelog.TopicPartitionReplica)
    private static final kafka.entity.changelog.schema.Topic.TopicPartitionReplica DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new kafka.entity.changelog.schema.Topic.TopicPartitionReplica();
    }

    public static kafka.entity.changelog.schema.Topic.TopicPartitionReplica getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public kafka.entity.changelog.schema.Topic.TopicPartitionReplica getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_Command_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_Command_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicsFound_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicsFound_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_CreateTopic_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_CreateTopic_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_DeleteTopic_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_DeleteTopic_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_ApplyTopicConfig_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_Event_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_Event_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_CreationEvent_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_CreationEvent_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_Events_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_Events_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicCreated_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicCreated_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicDeleted_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicDeleted_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_ConfigsApplied_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_ConfigsApplied_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_ConfigEvent_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_ConfigEvent_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_Config_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_Config_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicTopology_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicTopology_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicPartition_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicPartition_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_kafka_entity_changelog_TopicPartitionReplica_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\032src/main/proto/Topic.proto\022\026kafka.enti" +
      "ty.changelog\"\303\002\n\007Command\022\021\n\ttimestamp\030\001 " +
      "\001(\003\022\020\n\010username\030\002 \001(\t\022\016\n\006source\030\003 \001(\t\022:\n" +
      "\013topicsFound\030\004 \001(\0132#.kafka.entity.change" +
      "log.TopicsFoundH\000\022:\n\013createTopic\030\005 \001(\0132#" +
      ".kafka.entity.changelog.CreateTopicH\000\022:\n" +
      "\013deleteTopic\030\006 \001(\0132#.kafka.entity.change" +
      "log.DeleteTopicH\000\022D\n\020applyTopicConfig\030\007 " +
      "\001(\0132(.kafka.entity.changelog.ApplyTopicC" +
      "onfigH\000B\t\n\007command\"\033\n\013TopicsFound\022\014\n\004nam" +
      "e\030\001 \003(\t\"J\n\013CreateTopic\022\014\n\004name\030\001 \001(\t\022\022\n\n" +
      "partitions\030\002 \001(\005\022\031\n\021replicationFactor\030\003 " +
      "\001(\005\"\033\n\013DeleteTopic\022\014\n\004name\030\001 \001(\t\"r\n\020Appl" +
      "yTopicConfig\022\014\n\004name\030\001 \001(\t\022.\n\006config\030\002 \003" +
      "(\0132\036.kafka.entity.changelog.Config\022\020\n\010us" +
      "ername\030\003 \001(\t\022\016\n\006source\030\004 \001(\t\"\324\001\n\005Event\022\021" +
      "\n\ttopicName\030\001 \001(\t\022\021\n\ttimestamp\030\002 \001(\003\022\020\n\010" +
      "username\030\003 \001(\t\022\016\n\006source\030\004 \001(\t\022>\n\rcreati" +
      "onEvent\030\005 \001(\0132%.kafka.entity.changelog.C" +
      "reationEventH\000\022:\n\013configEvent\030\006 \001(\0132#.ka" +
      "fka.entity.changelog.ConfigEventH\000B\007\n\005ev" +
      "ent\"\224\001\n\rCreationEvent\022<\n\014topicCreated\030\002 " +
      "\001(\0132$.kafka.entity.changelog.TopicCreate" +
      "dH\000\022<\n\014topicDeleted\030\003 \001(\0132$.kafka.entity" +
      ".changelog.TopicDeletedH\000B\007\n\005event\"6\n\006Ev" +
      "ents\022,\n\005event\030\001 \003(\0132\035.kafka.entity.chang" +
      "elog.Event\"K\n\014TopicCreated\022\014\n\004name\030\001 \001(\t" +
      "\022\022\n\npartitions\030\002 \001(\005\022\031\n\021replicationFacto" +
      "r\030\003 \001(\005\"\034\n\014TopicDeleted\022\014\n\004name\030\001 \001(\t\"p\n" +
      "\016ConfigsApplied\022\014\n\004name\030\001 \001(\t\022.\n\006config\030" +
      "\002 \003(\0132\036.kafka.entity.changelog.Config\022\020\n" +
      "\010username\030\003 \001(\t\022\016\n\006source\030\004 \001(\t\"W\n\013Confi" +
      "gEvent\022?\n\rconfigApplied\030\002 \001(\0132&.kafka.en" +
      "tity.changelog.ConfigsAppliedH\000B\007\n\005event" +
      "\"z\n\006Config\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\0225" +
      "\n\006action\030\003 \001(\0162%.kafka.entity.changelog." +
      "Config.Action\"\035\n\006Action\022\007\n\003ADD\020\000\022\n\n\006DELE" +
      "TE\020\001\"X\n\rTopicTopology\022\014\n\004name\030\001 \001(\t\0229\n\tp" +
      "artition\030\002 \003(\0132&.kafka.entity.changelog." +
      "TopicPartition\"c\n\016TopicPartition\022\021\n\tpart" +
      "ition\030\001 \001(\005\022>\n\007replica\030\002 \003(\0132-.kafka.ent" +
      "ity.changelog.TopicPartitionReplica\"7\n\025T" +
      "opicPartitionReplica\022\016\n\006nodeId\030\001 \001(\005\022\016\n\006" +
      "leader\030\002 \001(\010B&\n\035kafka.entity.changelog.s" +
      "chemaB\005Topicb\006proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
        });
    internal_static_kafka_entity_changelog_Command_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_kafka_entity_changelog_Command_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_Command_descriptor,
        new java.lang.String[] { "Timestamp", "Username", "Source", "TopicsFound", "CreateTopic", "DeleteTopic", "ApplyTopicConfig", "Command", });
    internal_static_kafka_entity_changelog_TopicsFound_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_kafka_entity_changelog_TopicsFound_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicsFound_descriptor,
        new java.lang.String[] { "Name", });
    internal_static_kafka_entity_changelog_CreateTopic_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_kafka_entity_changelog_CreateTopic_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_CreateTopic_descriptor,
        new java.lang.String[] { "Name", "Partitions", "ReplicationFactor", });
    internal_static_kafka_entity_changelog_DeleteTopic_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_kafka_entity_changelog_DeleteTopic_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_DeleteTopic_descriptor,
        new java.lang.String[] { "Name", });
    internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_kafka_entity_changelog_ApplyTopicConfig_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_ApplyTopicConfig_descriptor,
        new java.lang.String[] { "Name", "Config", "Username", "Source", });
    internal_static_kafka_entity_changelog_Event_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_kafka_entity_changelog_Event_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_Event_descriptor,
        new java.lang.String[] { "TopicName", "Timestamp", "Username", "Source", "CreationEvent", "ConfigEvent", "Event", });
    internal_static_kafka_entity_changelog_CreationEvent_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_kafka_entity_changelog_CreationEvent_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_CreationEvent_descriptor,
        new java.lang.String[] { "TopicCreated", "TopicDeleted", "Event", });
    internal_static_kafka_entity_changelog_Events_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_kafka_entity_changelog_Events_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_Events_descriptor,
        new java.lang.String[] { "Event", });
    internal_static_kafka_entity_changelog_TopicCreated_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_kafka_entity_changelog_TopicCreated_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicCreated_descriptor,
        new java.lang.String[] { "Name", "Partitions", "ReplicationFactor", });
    internal_static_kafka_entity_changelog_TopicDeleted_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_kafka_entity_changelog_TopicDeleted_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicDeleted_descriptor,
        new java.lang.String[] { "Name", });
    internal_static_kafka_entity_changelog_ConfigsApplied_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_kafka_entity_changelog_ConfigsApplied_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_ConfigsApplied_descriptor,
        new java.lang.String[] { "Name", "Config", "Username", "Source", });
    internal_static_kafka_entity_changelog_ConfigEvent_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_kafka_entity_changelog_ConfigEvent_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_ConfigEvent_descriptor,
        new java.lang.String[] { "ConfigApplied", "Event", });
    internal_static_kafka_entity_changelog_Config_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_kafka_entity_changelog_Config_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_Config_descriptor,
        new java.lang.String[] { "Key", "Value", "Action", });
    internal_static_kafka_entity_changelog_TopicTopology_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_kafka_entity_changelog_TopicTopology_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicTopology_descriptor,
        new java.lang.String[] { "Name", "Partition", });
    internal_static_kafka_entity_changelog_TopicPartition_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_kafka_entity_changelog_TopicPartition_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicPartition_descriptor,
        new java.lang.String[] { "Partition", "Replica", });
    internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor =
      getDescriptor().getMessageTypes().get(15);
    internal_static_kafka_entity_changelog_TopicPartitionReplica_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_kafka_entity_changelog_TopicPartitionReplica_descriptor,
        new java.lang.String[] { "NodeId", "Leader", });
  }

  // @@protoc_insertion_point(outer_class_scope)
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy