content: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // NO CHECKED-IN PROTOBUF GENCODE
  // source: ots_internal_api.proto
  // Protobuf Java Version: 4.28.2
  
  package com.alicloud.openservices.tablestore.core.protocol;
  
  public final class OtsInternalApi {
    private OtsInternalApi() {}
    static {
      com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
        /* major= */ 4,
        /* minor= */ 28,
        /* patch= */ 2,
        /* suffix= */ "",
        OtsInternalApi.class.getName());
    }
    public static void registerAllExtensions(
        com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite registry) {
    }
  
    public static void registerAllExtensions(
        com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistry registry) {
      registerAllExtensions(
          (com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite) registry);
    }
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType}
     */
    public enum PrimaryKeyType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>INTEGER = 1;</code>
       */
      INTEGER(1),
      /**
       * <code>STRING = 2;</code>
       */
      STRING(2),
      /**
       * <code>BINARY = 3;</code>
       */
      BINARY(3),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PrimaryKeyType.class.getName());
      }
      /**
       * <code>INTEGER = 1;</code>
       */
      public static final int INTEGER_VALUE = 1;
      /**
       * <code>STRING = 2;</code>
       */
      public static final int STRING_VALUE = 2;
      /**
       * <code>BINARY = 3;</code>
       */
      public static final int BINARY_VALUE = 3;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static PrimaryKeyType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static PrimaryKeyType forNumber(int value) {
        switch (value) {
          case 1: return INTEGER;
          case 2: return STRING;
          case 3: return BINARY;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<PrimaryKeyType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          PrimaryKeyType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<PrimaryKeyType>() {
              public PrimaryKeyType findValueByNumber(int number) {
                return PrimaryKeyType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(0);
      }
  
      private static final PrimaryKeyType[] VALUES = values();
  
      public static PrimaryKeyType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private PrimaryKeyType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType}
     */
    public enum DefinedColumnType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>DCT_INTEGER = 1;</code>
       */
      DCT_INTEGER(1),
      /**
       * <code>DCT_DOUBLE = 2;</code>
       */
      DCT_DOUBLE(2),
      /**
       * <code>DCT_BOOLEAN = 3;</code>
       */
      DCT_BOOLEAN(3),
      /**
       * <code>DCT_STRING = 4;</code>
       */
      DCT_STRING(4),
      /**
       * <code>DCT_BLOB = 7;</code>
       */
      DCT_BLOB(7),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DefinedColumnType.class.getName());
      }
      /**
       * <code>DCT_INTEGER = 1;</code>
       */
      public static final int DCT_INTEGER_VALUE = 1;
      /**
       * <code>DCT_DOUBLE = 2;</code>
       */
      public static final int DCT_DOUBLE_VALUE = 2;
      /**
       * <code>DCT_BOOLEAN = 3;</code>
       */
      public static final int DCT_BOOLEAN_VALUE = 3;
      /**
       * <code>DCT_STRING = 4;</code>
       */
      public static final int DCT_STRING_VALUE = 4;
      /**
       * <code>DCT_BLOB = 7;</code>
       */
      public static final int DCT_BLOB_VALUE = 7;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static DefinedColumnType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static DefinedColumnType forNumber(int value) {
        switch (value) {
          case 1: return DCT_INTEGER;
          case 2: return DCT_DOUBLE;
          case 3: return DCT_BOOLEAN;
          case 4: return DCT_STRING;
          case 7: return DCT_BLOB;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<DefinedColumnType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          DefinedColumnType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<DefinedColumnType>() {
              public DefinedColumnType findValueByNumber(int number) {
                return DefinedColumnType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(1);
      }
  
      private static final DefinedColumnType[] VALUES = values();
  
      public static DefinedColumnType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private DefinedColumnType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption}
     */
    public enum PrimaryKeyOption
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>AUTO_INCREMENT = 1;</code>
       */
      AUTO_INCREMENT(1),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PrimaryKeyOption.class.getName());
      }
      /**
       * <code>AUTO_INCREMENT = 1;</code>
       */
      public static final int AUTO_INCREMENT_VALUE = 1;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static PrimaryKeyOption valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static PrimaryKeyOption forNumber(int value) {
        switch (value) {
          case 1: return AUTO_INCREMENT;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<PrimaryKeyOption>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          PrimaryKeyOption> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<PrimaryKeyOption>() {
              public PrimaryKeyOption findValueByNumber(int number) {
                return PrimaryKeyOption.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(2);
      }
  
      private static final PrimaryKeyOption[] VALUES = values();
  
      public static PrimaryKeyOption valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private PrimaryKeyOption(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode}
     */
    public enum IndexUpdateMode
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>IUM_ASYNC_INDEX = 0;</code>
       */
      IUM_ASYNC_INDEX(0),
      /**
       * <code>IUM_SYNC_INDEX = 1;</code>
       */
      IUM_SYNC_INDEX(1),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          IndexUpdateMode.class.getName());
      }
      /**
       * <code>IUM_ASYNC_INDEX = 0;</code>
       */
      public static final int IUM_ASYNC_INDEX_VALUE = 0;
      /**
       * <code>IUM_SYNC_INDEX = 1;</code>
       */
      public static final int IUM_SYNC_INDEX_VALUE = 1;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static IndexUpdateMode valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static IndexUpdateMode forNumber(int value) {
        switch (value) {
          case 0: return IUM_ASYNC_INDEX;
          case 1: return IUM_SYNC_INDEX;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexUpdateMode>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          IndexUpdateMode> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexUpdateMode>() {
              public IndexUpdateMode findValueByNumber(int number) {
                return IndexUpdateMode.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(3);
      }
  
      private static final IndexUpdateMode[] VALUES = values();
  
      public static IndexUpdateMode valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private IndexUpdateMode(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.IndexType}
     */
    public enum IndexType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>IT_GLOBAL_INDEX = 0;</code>
       */
      IT_GLOBAL_INDEX(0),
      /**
       * <code>IT_LOCAL_INDEX = 1;</code>
       */
      IT_LOCAL_INDEX(1),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          IndexType.class.getName());
      }
      /**
       * <code>IT_GLOBAL_INDEX = 0;</code>
       */
      public static final int IT_GLOBAL_INDEX_VALUE = 0;
      /**
       * <code>IT_LOCAL_INDEX = 1;</code>
       */
      public static final int IT_LOCAL_INDEX_VALUE = 1;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static IndexType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static IndexType forNumber(int value) {
        switch (value) {
          case 0: return IT_GLOBAL_INDEX;
          case 1: return IT_LOCAL_INDEX;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          IndexType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexType>() {
              public IndexType findValueByNumber(int number) {
                return IndexType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(4);
      }
  
      private static final IndexType[] VALUES = values();
  
      public static IndexType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private IndexType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.IndexType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase}
     */
    public enum IndexSyncPhase
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>ISP_INVALID = 0;</code>
       */
      ISP_INVALID(0),
      /**
       * <code>ISP_FULL = 1;</code>
       */
      ISP_FULL(1),
      /**
       * <code>ISP_INCR = 2;</code>
       */
      ISP_INCR(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          IndexSyncPhase.class.getName());
      }
      /**
       * <code>ISP_INVALID = 0;</code>
       */
      public static final int ISP_INVALID_VALUE = 0;
      /**
       * <code>ISP_FULL = 1;</code>
       */
      public static final int ISP_FULL_VALUE = 1;
      /**
       * <code>ISP_INCR = 2;</code>
       */
      public static final int ISP_INCR_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static IndexSyncPhase valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static IndexSyncPhase forNumber(int value) {
        switch (value) {
          case 0: return ISP_INVALID;
          case 1: return ISP_FULL;
          case 2: return ISP_INCR;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexSyncPhase>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          IndexSyncPhase> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<IndexSyncPhase>() {
              public IndexSyncPhase findValueByNumber(int number) {
                return IndexSyncPhase.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(5);
      }
  
      private static final IndexSyncPhase[] VALUES = values();
  
      public static IndexSyncPhase valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private IndexSyncPhase(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation}
     */
    public enum RowExistenceExpectation
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>IGNORE = 0;</code>
       */
      IGNORE(0),
      /**
       * <code>EXPECT_EXIST = 1;</code>
       */
      EXPECT_EXIST(1),
      /**
       * <code>EXPECT_NOT_EXIST = 2;</code>
       */
      EXPECT_NOT_EXIST(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowExistenceExpectation.class.getName());
      }
      /**
       * <code>IGNORE = 0;</code>
       */
      public static final int IGNORE_VALUE = 0;
      /**
       * <code>EXPECT_EXIST = 1;</code>
       */
      public static final int EXPECT_EXIST_VALUE = 1;
      /**
       * <code>EXPECT_NOT_EXIST = 2;</code>
       */
      public static final int EXPECT_NOT_EXIST_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static RowExistenceExpectation valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static RowExistenceExpectation forNumber(int value) {
        switch (value) {
          case 0: return IGNORE;
          case 1: return EXPECT_EXIST;
          case 2: return EXPECT_NOT_EXIST;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<RowExistenceExpectation>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          RowExistenceExpectation> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<RowExistenceExpectation>() {
              public RowExistenceExpectation findValueByNumber(int number) {
                return RowExistenceExpectation.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(6);
      }
  
      private static final RowExistenceExpectation[] VALUES = values();
  
      public static RowExistenceExpectation valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private RowExistenceExpectation(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.SSEKeyType}
     */
    public enum SSEKeyType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>SSE_KMS_SERVICE = 1;</code>
       */
      SSE_KMS_SERVICE(1),
      /**
       * <code>SSE_BYOK = 2;</code>
       */
      SSE_BYOK(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SSEKeyType.class.getName());
      }
      /**
       * <code>SSE_KMS_SERVICE = 1;</code>
       */
      public static final int SSE_KMS_SERVICE_VALUE = 1;
      /**
       * <code>SSE_BYOK = 2;</code>
       */
      public static final int SSE_BYOK_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static SSEKeyType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static SSEKeyType forNumber(int value) {
        switch (value) {
          case 1: return SSE_KMS_SERVICE;
          case 2: return SSE_BYOK;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SSEKeyType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          SSEKeyType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SSEKeyType>() {
              public SSEKeyType findValueByNumber(int number) {
                return SSEKeyType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(7);
      }
  
      private static final SSEKeyType[] VALUES = values();
  
      public static SSEKeyType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private SSEKeyType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.SSEKeyType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.ReturnType}
     */
    public enum ReturnType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>RT_NONE = 0;</code>
       */
      RT_NONE(0),
      /**
       * <code>RT_PK = 1;</code>
       */
      RT_PK(1),
      /**
       * <code>RT_AFTER_MODIFY = 2;</code>
       */
      RT_AFTER_MODIFY(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ReturnType.class.getName());
      }
      /**
       * <code>RT_NONE = 0;</code>
       */
      public static final int RT_NONE_VALUE = 0;
      /**
       * <code>RT_PK = 1;</code>
       */
      public static final int RT_PK_VALUE = 1;
      /**
       * <code>RT_AFTER_MODIFY = 2;</code>
       */
      public static final int RT_AFTER_MODIFY_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static ReturnType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static ReturnType forNumber(int value) {
        switch (value) {
          case 0: return RT_NONE;
          case 1: return RT_PK;
          case 2: return RT_AFTER_MODIFY;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<ReturnType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          ReturnType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<ReturnType>() {
              public ReturnType findValueByNumber(int number) {
                return ReturnType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(8);
      }
  
      private static final ReturnType[] VALUES = values();
  
      public static ReturnType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private ReturnType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.ReturnType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.OperationType}
     */
    public enum OperationType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>PUT = 1;</code>
       */
      PUT(1),
      /**
       * <code>UPDATE = 2;</code>
       */
      UPDATE(2),
      /**
       * <code>DELETE = 3;</code>
       */
      DELETE(3),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          OperationType.class.getName());
      }
      /**
       * <code>PUT = 1;</code>
       */
      public static final int PUT_VALUE = 1;
      /**
       * <code>UPDATE = 2;</code>
       */
      public static final int UPDATE_VALUE = 2;
      /**
       * <code>DELETE = 3;</code>
       */
      public static final int DELETE_VALUE = 3;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static OperationType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static OperationType forNumber(int value) {
        switch (value) {
          case 1: return PUT;
          case 2: return UPDATE;
          case 3: return DELETE;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<OperationType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          OperationType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<OperationType>() {
              public OperationType findValueByNumber(int number) {
                return OperationType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(9);
      }
  
      private static final OperationType[] VALUES = values();
  
      public static OperationType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private OperationType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.OperationType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.Direction}
     */
    public enum Direction
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>FORWARD = 0;</code>
       */
      FORWARD(0),
      /**
       * <code>BACKWARD = 1;</code>
       */
      BACKWARD(1),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          Direction.class.getName());
      }
      /**
       * <code>FORWARD = 0;</code>
       */
      public static final int FORWARD_VALUE = 0;
      /**
       * <code>BACKWARD = 1;</code>
       */
      public static final int BACKWARD_VALUE = 1;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Direction valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static Direction forNumber(int value) {
        switch (value) {
          case 0: return FORWARD;
          case 1: return BACKWARD;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<Direction>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          Direction> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<Direction>() {
              public Direction findValueByNumber(int number) {
                return Direction.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(10);
      }
  
      private static final Direction[] VALUES = values();
  
      public static Direction valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private Direction(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.Direction)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.StreamStatus}
     */
    public enum StreamStatus
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>STREAM_ENABLING = 1;</code>
       */
      STREAM_ENABLING(1),
      /**
       * <code>STREAM_ACTIVE = 2;</code>
       */
      STREAM_ACTIVE(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StreamStatus.class.getName());
      }
      /**
       * <code>STREAM_ENABLING = 1;</code>
       */
      public static final int STREAM_ENABLING_VALUE = 1;
      /**
       * <code>STREAM_ACTIVE = 2;</code>
       */
      public static final int STREAM_ACTIVE_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static StreamStatus valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static StreamStatus forNumber(int value) {
        switch (value) {
          case 1: return STREAM_ENABLING;
          case 2: return STREAM_ACTIVE;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<StreamStatus>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          StreamStatus> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<StreamStatus>() {
              public StreamStatus findValueByNumber(int number) {
                return StreamStatus.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(11);
      }
  
      private static final StreamStatus[] VALUES = values();
  
      public static StreamStatus valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private StreamStatus(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.StreamStatus)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.ActionType}
     */
    public enum ActionType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>PUT_ROW = 1;</code>
       */
      PUT_ROW(1),
      /**
       * <code>UPDATE_ROW = 2;</code>
       */
      UPDATE_ROW(2),
      /**
       * <code>DELETE_ROW = 3;</code>
       */
      DELETE_ROW(3),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ActionType.class.getName());
      }
      /**
       * <code>PUT_ROW = 1;</code>
       */
      public static final int PUT_ROW_VALUE = 1;
      /**
       * <code>UPDATE_ROW = 2;</code>
       */
      public static final int UPDATE_ROW_VALUE = 2;
      /**
       * <code>DELETE_ROW = 3;</code>
       */
      public static final int DELETE_ROW_VALUE = 3;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static ActionType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static ActionType forNumber(int value) {
        switch (value) {
          case 1: return PUT_ROW;
          case 2: return UPDATE_ROW;
          case 3: return DELETE_ROW;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<ActionType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          ActionType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<ActionType>() {
              public ActionType findValueByNumber(int number) {
                return ActionType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(12);
      }
  
      private static final ActionType[] VALUES = values();
  
      public static ActionType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private ActionType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.ActionType)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.DataBlockType}
     */
    public enum DataBlockType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>DBT_PLAIN_BUFFER = 0;</code>
       */
      DBT_PLAIN_BUFFER(0),
      /**
       * <code>DBT_SIMPLE_ROW_MATRIX = 1;</code>
       */
      DBT_SIMPLE_ROW_MATRIX(1),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DataBlockType.class.getName());
      }
      /**
       * <code>DBT_PLAIN_BUFFER = 0;</code>
       */
      public static final int DBT_PLAIN_BUFFER_VALUE = 0;
      /**
       * <code>DBT_SIMPLE_ROW_MATRIX = 1;</code>
       */
      public static final int DBT_SIMPLE_ROW_MATRIX_VALUE = 1;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static DataBlockType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static DataBlockType forNumber(int value) {
        switch (value) {
          case 0: return DBT_PLAIN_BUFFER;
          case 1: return DBT_SIMPLE_ROW_MATRIX;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<DataBlockType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          DataBlockType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<DataBlockType>() {
              public DataBlockType findValueByNumber(int number) {
                return DataBlockType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(13);
      }
  
      private static final DataBlockType[] VALUES = values();
  
      public static DataBlockType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private DataBlockType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.DataBlockType)
    }
  
    /**
     * <pre>
     * SQLQuery 
     * </pre>
     *
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion}
     */
    public enum SQLPayloadVersion
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>SQL_PLAIN_BUFFER = 1;</code>
       */
      SQL_PLAIN_BUFFER(1),
      /**
       * <code>SQL_FLAT_BUFFERS = 2;</code>
       */
      SQL_FLAT_BUFFERS(2),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SQLPayloadVersion.class.getName());
      }
      /**
       * <code>SQL_PLAIN_BUFFER = 1;</code>
       */
      public static final int SQL_PLAIN_BUFFER_VALUE = 1;
      /**
       * <code>SQL_FLAT_BUFFERS = 2;</code>
       */
      public static final int SQL_FLAT_BUFFERS_VALUE = 2;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static SQLPayloadVersion valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static SQLPayloadVersion forNumber(int value) {
        switch (value) {
          case 1: return SQL_PLAIN_BUFFER;
          case 2: return SQL_FLAT_BUFFERS;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SQLPayloadVersion>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          SQLPayloadVersion> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SQLPayloadVersion>() {
              public SQLPayloadVersion findValueByNumber(int number) {
                return SQLPayloadVersion.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(14);
      }
  
      private static final SQLPayloadVersion[] VALUES = values();
  
      public static SQLPayloadVersion valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private SQLPayloadVersion(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion)
    }
  
    /**
     * Protobuf enum {@code com.alicloud.openservices.tablestore.core.protocol.SQLStatementType}
     */
    public enum SQLStatementType
        implements com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>SQL_SELECT = 1;</code>
       */
      SQL_SELECT(1),
      /**
       * <code>SQL_CREATE_TABLE = 2;</code>
       */
      SQL_CREATE_TABLE(2),
      /**
       * <code>SQL_SHOW_TABLE = 3;</code>
       */
      SQL_SHOW_TABLE(3),
      /**
       * <code>SQL_DESCRIBE_TABLE = 4;</code>
       */
      SQL_DESCRIBE_TABLE(4),
      /**
       * <code>SQL_DROP_TABLE = 5;</code>
       */
      SQL_DROP_TABLE(5),
      /**
       * <code>SQL_ALTER_TABLE = 6;</code>
       */
      SQL_ALTER_TABLE(6),
      ;
  
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SQLStatementType.class.getName());
      }
      /**
       * <code>SQL_SELECT = 1;</code>
       */
      public static final int SQL_SELECT_VALUE = 1;
      /**
       * <code>SQL_CREATE_TABLE = 2;</code>
       */
      public static final int SQL_CREATE_TABLE_VALUE = 2;
      /**
       * <code>SQL_SHOW_TABLE = 3;</code>
       */
      public static final int SQL_SHOW_TABLE_VALUE = 3;
      /**
       * <code>SQL_DESCRIBE_TABLE = 4;</code>
       */
      public static final int SQL_DESCRIBE_TABLE_VALUE = 4;
      /**
       * <code>SQL_DROP_TABLE = 5;</code>
       */
      public static final int SQL_DROP_TABLE_VALUE = 5;
      /**
       * <code>SQL_ALTER_TABLE = 6;</code>
       */
      public static final int SQL_ALTER_TABLE_VALUE = 6;
  
  
      public final int getNumber() {
        return value;
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static SQLStatementType valueOf(int value) {
        return forNumber(value);
      }
  
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static SQLStatementType forNumber(int value) {
        switch (value) {
          case 1: return SQL_SELECT;
          case 2: return SQL_CREATE_TABLE;
          case 3: return SQL_SHOW_TABLE;
          case 4: return SQL_DESCRIBE_TABLE;
          case 5: return SQL_DROP_TABLE;
          case 6: return SQL_ALTER_TABLE;
          default: return null;
        }
      }
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SQLStatementType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<
          SQLStatementType> internalValueMap =
            new com.aliyun.ots.thirdparty.com.google.protobuf.Internal.EnumLiteMap<SQLStatementType>() {
              public SQLStatementType findValueByNumber(int number) {
                return SQLStatementType.forNumber(number);
              }
            };
  
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.getDescriptor().getEnumTypes().get(15);
      }
  
      private static final SQLStatementType[] VALUES = values();
  
      public static SQLStatementType valueOf(
          com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private SQLStatementType(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:com.alicloud.openservices.tablestore.core.protocol.SQLStatementType)
    }
  
    public interface ErrorOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.Error)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string code = 1;</code>
       * @return Whether the code field is set.
       */
      boolean hasCode();
      /**
       * <code>required string code = 1;</code>
       * @return The code.
       */
      java.lang.String getCode();
      /**
       * <code>required string code = 1;</code>
       * @return The bytes for code.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getCodeBytes();
  
      /**
       * <code>optional string message = 2;</code>
       * @return Whether the message field is set.
       */
      boolean hasMessage();
      /**
       * <code>optional string message = 2;</code>
       * @return The message.
       */
      java.lang.String getMessage();
      /**
       * <code>optional string message = 2;</code>
       * @return The bytes for message.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMessageBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       * @return Whether the accessDeniedDetail field is set.
       */
      boolean hasAccessDeniedDetail();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       * @return The accessDeniedDetail.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getAccessDeniedDetail();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder getAccessDeniedDetailOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Error}
     */
    public static final class Error extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.Error)
        ErrorOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          Error.class.getName());
      }
      // Use Error.newBuilder() to construct.
      private Error(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private Error() {
        code_ = "";
        message_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder.class);
      }
  
      private int bitField0_;
      public static final int CODE_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object code_ = "";
      /**
       * <code>required string code = 1;</code>
       * @return Whether the code field is set.
       */
      @java.lang.Override
      public boolean hasCode() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string code = 1;</code>
       * @return The code.
       */
      @java.lang.Override
      public java.lang.String getCode() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            code_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string code = 1;</code>
       * @return The bytes for code.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getCodeBytes() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          code_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int MESSAGE_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object message_ = "";
      /**
       * <code>optional string message = 2;</code>
       * @return Whether the message field is set.
       */
      @java.lang.Override
      public boolean hasMessage() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional string message = 2;</code>
       * @return The message.
       */
      @java.lang.Override
      public java.lang.String getMessage() {
        java.lang.Object ref = message_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            message_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string message = 2;</code>
       * @return The bytes for message.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMessageBytes() {
        java.lang.Object ref = message_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          message_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ACCESS_DENIED_DETAIL_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail accessDeniedDetail_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       * @return Whether the accessDeniedDetail field is set.
       */
      @java.lang.Override
      public boolean hasAccessDeniedDetail() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       * @return The accessDeniedDetail.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getAccessDeniedDetail() {
        return accessDeniedDetail_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance() : accessDeniedDetail_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder getAccessDeniedDetailOrBuilder() {
        return accessDeniedDetail_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance() : accessDeniedDetail_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasCode()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasAccessDeniedDetail()) {
          if (!getAccessDeniedDetail().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, code_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, message_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getAccessDeniedDetail());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, code_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, message_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getAccessDeniedDetail());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error) obj;
  
        if (hasCode() != other.hasCode()) return false;
        if (hasCode()) {
          if (!getCode()
              .equals(other.getCode())) return false;
        }
        if (hasMessage() != other.hasMessage()) return false;
        if (hasMessage()) {
          if (!getMessage()
              .equals(other.getMessage())) return false;
        }
        if (hasAccessDeniedDetail() != other.hasAccessDeniedDetail()) return false;
        if (hasAccessDeniedDetail()) {
          if (!getAccessDeniedDetail()
              .equals(other.getAccessDeniedDetail())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasCode()) {
          hash = (37 * hash) + CODE_FIELD_NUMBER;
          hash = (53 * hash) + getCode().hashCode();
        }
        if (hasMessage()) {
          hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
          hash = (53 * hash) + getMessage().hashCode();
        }
        if (hasAccessDeniedDetail()) {
          hash = (37 * hash) + ACCESS_DENIED_DETAIL_FIELD_NUMBER;
          hash = (53 * hash) + getAccessDeniedDetail().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Error}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.Error)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getAccessDeniedDetailFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          code_ = "";
          message_ = "";
          accessDeniedDetail_ = null;
          if (accessDeniedDetailBuilder_ != null) {
            accessDeniedDetailBuilder_.dispose();
            accessDeniedDetailBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.code_ = code_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.message_ = message_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.accessDeniedDetail_ = accessDeniedDetailBuilder_ == null
                ? accessDeniedDetail_
                : accessDeniedDetailBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance()) return this;
          if (other.hasCode()) {
            code_ = other.code_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasMessage()) {
            message_ = other.message_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasAccessDeniedDetail()) {
            mergeAccessDeniedDetail(other.getAccessDeniedDetail());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasCode()) {
            return false;
          }
          if (hasAccessDeniedDetail()) {
            if (!getAccessDeniedDetail().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  code_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  message_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getAccessDeniedDetailFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object code_ = "";
        /**
         * <code>required string code = 1;</code>
         * @return Whether the code field is set.
         */
        public boolean hasCode() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string code = 1;</code>
         * @return The code.
         */
        public java.lang.String getCode() {
          java.lang.Object ref = code_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              code_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string code = 1;</code>
         * @return The bytes for code.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getCodeBytes() {
          java.lang.Object ref = code_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            code_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string code = 1;</code>
         * @param value The code to set.
         * @return This builder for chaining.
         */
        public Builder setCode(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          code_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string code = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearCode() {
          code_ = getDefaultInstance().getCode();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string code = 1;</code>
         * @param value The bytes for code to set.
         * @return This builder for chaining.
         */
        public Builder setCodeBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          code_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object message_ = "";
        /**
         * <code>optional string message = 2;</code>
         * @return Whether the message field is set.
         */
        public boolean hasMessage() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string message = 2;</code>
         * @return The message.
         */
        public java.lang.String getMessage() {
          java.lang.Object ref = message_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              message_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string message = 2;</code>
         * @return The bytes for message.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getMessageBytes() {
          java.lang.Object ref = message_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            message_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string message = 2;</code>
         * @param value The message to set.
         * @return This builder for chaining.
         */
        public Builder setMessage(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          message_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string message = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearMessage() {
          message_ = getDefaultInstance().getMessage();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string message = 2;</code>
         * @param value The bytes for message to set.
         * @return This builder for chaining.
         */
        public Builder setMessageBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          message_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail accessDeniedDetail_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder> accessDeniedDetailBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         * @return Whether the accessDeniedDetail field is set.
         */
        public boolean hasAccessDeniedDetail() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         * @return The accessDeniedDetail.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getAccessDeniedDetail() {
          if (accessDeniedDetailBuilder_ == null) {
            return accessDeniedDetail_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance() : accessDeniedDetail_;
          } else {
            return accessDeniedDetailBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public Builder setAccessDeniedDetail(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail value) {
          if (accessDeniedDetailBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            accessDeniedDetail_ = value;
          } else {
            accessDeniedDetailBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public Builder setAccessDeniedDetail(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder builderForValue) {
          if (accessDeniedDetailBuilder_ == null) {
            accessDeniedDetail_ = builderForValue.build();
          } else {
            accessDeniedDetailBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public Builder mergeAccessDeniedDetail(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail value) {
          if (accessDeniedDetailBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              accessDeniedDetail_ != null &&
              accessDeniedDetail_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance()) {
              getAccessDeniedDetailBuilder().mergeFrom(value);
            } else {
              accessDeniedDetail_ = value;
            }
          } else {
            accessDeniedDetailBuilder_.mergeFrom(value);
          }
          if (accessDeniedDetail_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public Builder clearAccessDeniedDetail() {
          bitField0_ = (bitField0_ & ~0x00000004);
          accessDeniedDetail_ = null;
          if (accessDeniedDetailBuilder_ != null) {
            accessDeniedDetailBuilder_.dispose();
            accessDeniedDetailBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder getAccessDeniedDetailBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getAccessDeniedDetailFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder getAccessDeniedDetailOrBuilder() {
          if (accessDeniedDetailBuilder_ != null) {
            return accessDeniedDetailBuilder_.getMessageOrBuilder();
          } else {
            return accessDeniedDetail_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance() : accessDeniedDetail_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail access_denied_detail = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder> 
            getAccessDeniedDetailFieldBuilder() {
          if (accessDeniedDetailBuilder_ == null) {
            accessDeniedDetailBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder>(
                    getAccessDeniedDetail(),
                    getParentForChildren(),
                    isClean());
            accessDeniedDetail_ = null;
          }
          return accessDeniedDetailBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.Error)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.Error)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Error>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<Error>() {
        @java.lang.Override
        public Error parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Error> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Error> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface AccessDeniedDetailOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string auth_action = 1;</code>
       * @return Whether the authAction field is set.
       */
      boolean hasAuthAction();
      /**
       * <code>required string auth_action = 1;</code>
       * @return The authAction.
       */
      java.lang.String getAuthAction();
      /**
       * <code>required string auth_action = 1;</code>
       * @return The bytes for authAction.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthActionBytes();
  
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return Whether the authPrincipalType field is set.
       */
      boolean hasAuthPrincipalType();
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return The authPrincipalType.
       */
      java.lang.String getAuthPrincipalType();
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return The bytes for authPrincipalType.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalTypeBytes();
  
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return Whether the authPrincipalOwnerId field is set.
       */
      boolean hasAuthPrincipalOwnerId();
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return The authPrincipalOwnerId.
       */
      java.lang.String getAuthPrincipalOwnerId();
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return The bytes for authPrincipalOwnerId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalOwnerIdBytes();
  
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return Whether the authPrincipalDisplayName field is set.
       */
      boolean hasAuthPrincipalDisplayName();
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return The authPrincipalDisplayName.
       */
      java.lang.String getAuthPrincipalDisplayName();
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return The bytes for authPrincipalDisplayName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalDisplayNameBytes();
  
      /**
       * <code>required string policy_type = 5;</code>
       * @return Whether the policyType field is set.
       */
      boolean hasPolicyType();
      /**
       * <code>required string policy_type = 5;</code>
       * @return The policyType.
       */
      java.lang.String getPolicyType();
      /**
       * <code>required string policy_type = 5;</code>
       * @return The bytes for policyType.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getPolicyTypeBytes();
  
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return Whether the noPermissionType field is set.
       */
      boolean hasNoPermissionType();
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return The noPermissionType.
       */
      java.lang.String getNoPermissionType();
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return The bytes for noPermissionType.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNoPermissionTypeBytes();
  
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return Whether the encodedDiagnosticMessage field is set.
       */
      boolean hasEncodedDiagnosticMessage();
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return The encodedDiagnosticMessage.
       */
      java.lang.String getEncodedDiagnosticMessage();
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return The bytes for encodedDiagnosticMessage.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEncodedDiagnosticMessageBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail}
     */
    public static final class AccessDeniedDetail extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail)
        AccessDeniedDetailOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          AccessDeniedDetail.class.getName());
      }
      // Use AccessDeniedDetail.newBuilder() to construct.
      private AccessDeniedDetail(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private AccessDeniedDetail() {
        authAction_ = "";
        authPrincipalType_ = "";
        authPrincipalOwnerId_ = "";
        authPrincipalDisplayName_ = "";
        policyType_ = "";
        noPermissionType_ = "";
        encodedDiagnosticMessage_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder.class);
      }
  
      private int bitField0_;
      public static final int AUTH_ACTION_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object authAction_ = "";
      /**
       * <code>required string auth_action = 1;</code>
       * @return Whether the authAction field is set.
       */
      @java.lang.Override
      public boolean hasAuthAction() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string auth_action = 1;</code>
       * @return The authAction.
       */
      @java.lang.Override
      public java.lang.String getAuthAction() {
        java.lang.Object ref = authAction_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authAction_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string auth_action = 1;</code>
       * @return The bytes for authAction.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthActionBytes() {
        java.lang.Object ref = authAction_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authAction_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int AUTH_PRINCIPAL_TYPE_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object authPrincipalType_ = "";
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return Whether the authPrincipalType field is set.
       */
      @java.lang.Override
      public boolean hasAuthPrincipalType() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return The authPrincipalType.
       */
      @java.lang.Override
      public java.lang.String getAuthPrincipalType() {
        java.lang.Object ref = authPrincipalType_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authPrincipalType_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string auth_principal_type = 2;</code>
       * @return The bytes for authPrincipalType.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalTypeBytes() {
        java.lang.Object ref = authPrincipalType_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authPrincipalType_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int AUTH_PRINCIPAL_OWNER_ID_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private volatile java.lang.Object authPrincipalOwnerId_ = "";
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return Whether the authPrincipalOwnerId field is set.
       */
      @java.lang.Override
      public boolean hasAuthPrincipalOwnerId() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return The authPrincipalOwnerId.
       */
      @java.lang.Override
      public java.lang.String getAuthPrincipalOwnerId() {
        java.lang.Object ref = authPrincipalOwnerId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authPrincipalOwnerId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string auth_principal_owner_id = 3;</code>
       * @return The bytes for authPrincipalOwnerId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalOwnerIdBytes() {
        java.lang.Object ref = authPrincipalOwnerId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authPrincipalOwnerId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int AUTH_PRINCIPAL_DISPLAY_NAME_FIELD_NUMBER = 4;
      @SuppressWarnings("serial")
      private volatile java.lang.Object authPrincipalDisplayName_ = "";
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return Whether the authPrincipalDisplayName field is set.
       */
      @java.lang.Override
      public boolean hasAuthPrincipalDisplayName() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return The authPrincipalDisplayName.
       */
      @java.lang.Override
      public java.lang.String getAuthPrincipalDisplayName() {
        java.lang.Object ref = authPrincipalDisplayName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authPrincipalDisplayName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string auth_principal_display_name = 4;</code>
       * @return The bytes for authPrincipalDisplayName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getAuthPrincipalDisplayNameBytes() {
        java.lang.Object ref = authPrincipalDisplayName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authPrincipalDisplayName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int POLICY_TYPE_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private volatile java.lang.Object policyType_ = "";
      /**
       * <code>required string policy_type = 5;</code>
       * @return Whether the policyType field is set.
       */
      @java.lang.Override
      public boolean hasPolicyType() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>required string policy_type = 5;</code>
       * @return The policyType.
       */
      @java.lang.Override
      public java.lang.String getPolicyType() {
        java.lang.Object ref = policyType_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            policyType_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string policy_type = 5;</code>
       * @return The bytes for policyType.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getPolicyTypeBytes() {
        java.lang.Object ref = policyType_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          policyType_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int NO_PERMISSION_TYPE_FIELD_NUMBER = 6;
      @SuppressWarnings("serial")
      private volatile java.lang.Object noPermissionType_ = "";
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return Whether the noPermissionType field is set.
       */
      @java.lang.Override
      public boolean hasNoPermissionType() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return The noPermissionType.
       */
      @java.lang.Override
      public java.lang.String getNoPermissionType() {
        java.lang.Object ref = noPermissionType_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            noPermissionType_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string no_permission_type = 6;</code>
       * @return The bytes for noPermissionType.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNoPermissionTypeBytes() {
        java.lang.Object ref = noPermissionType_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          noPermissionType_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ENCODED_DIAGNOSTIC_MESSAGE_FIELD_NUMBER = 7;
      @SuppressWarnings("serial")
      private volatile java.lang.Object encodedDiagnosticMessage_ = "";
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return Whether the encodedDiagnosticMessage field is set.
       */
      @java.lang.Override
      public boolean hasEncodedDiagnosticMessage() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return The encodedDiagnosticMessage.
       */
      @java.lang.Override
      public java.lang.String getEncodedDiagnosticMessage() {
        java.lang.Object ref = encodedDiagnosticMessage_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            encodedDiagnosticMessage_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string encoded_diagnostic_message = 7;</code>
       * @return The bytes for encodedDiagnosticMessage.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEncodedDiagnosticMessageBytes() {
        java.lang.Object ref = encodedDiagnosticMessage_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          encodedDiagnosticMessage_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasAuthAction()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasAuthPrincipalType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasAuthPrincipalOwnerId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasAuthPrincipalDisplayName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasPolicyType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasNoPermissionType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, authAction_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, authPrincipalType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, authPrincipalOwnerId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 4, authPrincipalDisplayName_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, policyType_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 6, noPermissionType_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 7, encodedDiagnosticMessage_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, authAction_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, authPrincipalType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(3, authPrincipalOwnerId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(4, authPrincipalDisplayName_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(5, policyType_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(6, noPermissionType_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(7, encodedDiagnosticMessage_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail) obj;
  
        if (hasAuthAction() != other.hasAuthAction()) return false;
        if (hasAuthAction()) {
          if (!getAuthAction()
              .equals(other.getAuthAction())) return false;
        }
        if (hasAuthPrincipalType() != other.hasAuthPrincipalType()) return false;
        if (hasAuthPrincipalType()) {
          if (!getAuthPrincipalType()
              .equals(other.getAuthPrincipalType())) return false;
        }
        if (hasAuthPrincipalOwnerId() != other.hasAuthPrincipalOwnerId()) return false;
        if (hasAuthPrincipalOwnerId()) {
          if (!getAuthPrincipalOwnerId()
              .equals(other.getAuthPrincipalOwnerId())) return false;
        }
        if (hasAuthPrincipalDisplayName() != other.hasAuthPrincipalDisplayName()) return false;
        if (hasAuthPrincipalDisplayName()) {
          if (!getAuthPrincipalDisplayName()
              .equals(other.getAuthPrincipalDisplayName())) return false;
        }
        if (hasPolicyType() != other.hasPolicyType()) return false;
        if (hasPolicyType()) {
          if (!getPolicyType()
              .equals(other.getPolicyType())) return false;
        }
        if (hasNoPermissionType() != other.hasNoPermissionType()) return false;
        if (hasNoPermissionType()) {
          if (!getNoPermissionType()
              .equals(other.getNoPermissionType())) return false;
        }
        if (hasEncodedDiagnosticMessage() != other.hasEncodedDiagnosticMessage()) return false;
        if (hasEncodedDiagnosticMessage()) {
          if (!getEncodedDiagnosticMessage()
              .equals(other.getEncodedDiagnosticMessage())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasAuthAction()) {
          hash = (37 * hash) + AUTH_ACTION_FIELD_NUMBER;
          hash = (53 * hash) + getAuthAction().hashCode();
        }
        if (hasAuthPrincipalType()) {
          hash = (37 * hash) + AUTH_PRINCIPAL_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + getAuthPrincipalType().hashCode();
        }
        if (hasAuthPrincipalOwnerId()) {
          hash = (37 * hash) + AUTH_PRINCIPAL_OWNER_ID_FIELD_NUMBER;
          hash = (53 * hash) + getAuthPrincipalOwnerId().hashCode();
        }
        if (hasAuthPrincipalDisplayName()) {
          hash = (37 * hash) + AUTH_PRINCIPAL_DISPLAY_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getAuthPrincipalDisplayName().hashCode();
        }
        if (hasPolicyType()) {
          hash = (37 * hash) + POLICY_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + getPolicyType().hashCode();
        }
        if (hasNoPermissionType()) {
          hash = (37 * hash) + NO_PERMISSION_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + getNoPermissionType().hashCode();
        }
        if (hasEncodedDiagnosticMessage()) {
          hash = (37 * hash) + ENCODED_DIAGNOSTIC_MESSAGE_FIELD_NUMBER;
          hash = (53 * hash) + getEncodedDiagnosticMessage().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetailOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          authAction_ = "";
          authPrincipalType_ = "";
          authPrincipalOwnerId_ = "";
          authPrincipalDisplayName_ = "";
          policyType_ = "";
          noPermissionType_ = "";
          encodedDiagnosticMessage_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.authAction_ = authAction_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.authPrincipalType_ = authPrincipalType_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.authPrincipalOwnerId_ = authPrincipalOwnerId_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.authPrincipalDisplayName_ = authPrincipalDisplayName_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.policyType_ = policyType_;
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.noPermissionType_ = noPermissionType_;
            to_bitField0_ |= 0x00000020;
          }
          if (((from_bitField0_ & 0x00000040) != 0)) {
            result.encodedDiagnosticMessage_ = encodedDiagnosticMessage_;
            to_bitField0_ |= 0x00000040;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail.getDefaultInstance()) return this;
          if (other.hasAuthAction()) {
            authAction_ = other.authAction_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasAuthPrincipalType()) {
            authPrincipalType_ = other.authPrincipalType_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasAuthPrincipalOwnerId()) {
            authPrincipalOwnerId_ = other.authPrincipalOwnerId_;
            bitField0_ |= 0x00000004;
            onChanged();
          }
          if (other.hasAuthPrincipalDisplayName()) {
            authPrincipalDisplayName_ = other.authPrincipalDisplayName_;
            bitField0_ |= 0x00000008;
            onChanged();
          }
          if (other.hasPolicyType()) {
            policyType_ = other.policyType_;
            bitField0_ |= 0x00000010;
            onChanged();
          }
          if (other.hasNoPermissionType()) {
            noPermissionType_ = other.noPermissionType_;
            bitField0_ |= 0x00000020;
            onChanged();
          }
          if (other.hasEncodedDiagnosticMessage()) {
            encodedDiagnosticMessage_ = other.encodedDiagnosticMessage_;
            bitField0_ |= 0x00000040;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasAuthAction()) {
            return false;
          }
          if (!hasAuthPrincipalType()) {
            return false;
          }
          if (!hasAuthPrincipalOwnerId()) {
            return false;
          }
          if (!hasAuthPrincipalDisplayName()) {
            return false;
          }
          if (!hasPolicyType()) {
            return false;
          }
          if (!hasNoPermissionType()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  authAction_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  authPrincipalType_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  authPrincipalOwnerId_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  authPrincipalDisplayName_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  policyType_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                case 50: {
                  noPermissionType_ = input.readBytes();
                  bitField0_ |= 0x00000020;
                  break;
                } // case 50
                case 58: {
                  encodedDiagnosticMessage_ = input.readBytes();
                  bitField0_ |= 0x00000040;
                  break;
                } // case 58
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object authAction_ = "";
        /**
         * <code>required string auth_action = 1;</code>
         * @return Whether the authAction field is set.
         */
        public boolean hasAuthAction() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string auth_action = 1;</code>
         * @return The authAction.
         */
        public java.lang.String getAuthAction() {
          java.lang.Object ref = authAction_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              authAction_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string auth_action = 1;</code>
         * @return The bytes for authAction.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getAuthActionBytes() {
          java.lang.Object ref = authAction_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            authAction_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string auth_action = 1;</code>
         * @param value The authAction to set.
         * @return This builder for chaining.
         */
        public Builder setAuthAction(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          authAction_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_action = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearAuthAction() {
          authAction_ = getDefaultInstance().getAuthAction();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_action = 1;</code>
         * @param value The bytes for authAction to set.
         * @return This builder for chaining.
         */
        public Builder setAuthActionBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          authAction_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object authPrincipalType_ = "";
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @return Whether the authPrincipalType field is set.
         */
        public boolean hasAuthPrincipalType() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @return The authPrincipalType.
         */
        public java.lang.String getAuthPrincipalType() {
          java.lang.Object ref = authPrincipalType_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              authPrincipalType_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @return The bytes for authPrincipalType.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getAuthPrincipalTypeBytes() {
          java.lang.Object ref = authPrincipalType_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            authPrincipalType_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @param value The authPrincipalType to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalType(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalType_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearAuthPrincipalType() {
          authPrincipalType_ = getDefaultInstance().getAuthPrincipalType();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_type = 2;</code>
         * @param value The bytes for authPrincipalType to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalTypeBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalType_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private java.lang.Object authPrincipalOwnerId_ = "";
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @return Whether the authPrincipalOwnerId field is set.
         */
        public boolean hasAuthPrincipalOwnerId() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @return The authPrincipalOwnerId.
         */
        public java.lang.String getAuthPrincipalOwnerId() {
          java.lang.Object ref = authPrincipalOwnerId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              authPrincipalOwnerId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @return The bytes for authPrincipalOwnerId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getAuthPrincipalOwnerIdBytes() {
          java.lang.Object ref = authPrincipalOwnerId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            authPrincipalOwnerId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @param value The authPrincipalOwnerId to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalOwnerId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalOwnerId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearAuthPrincipalOwnerId() {
          authPrincipalOwnerId_ = getDefaultInstance().getAuthPrincipalOwnerId();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_owner_id = 3;</code>
         * @param value The bytes for authPrincipalOwnerId to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalOwnerIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalOwnerId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        private java.lang.Object authPrincipalDisplayName_ = "";
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @return Whether the authPrincipalDisplayName field is set.
         */
        public boolean hasAuthPrincipalDisplayName() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @return The authPrincipalDisplayName.
         */
        public java.lang.String getAuthPrincipalDisplayName() {
          java.lang.Object ref = authPrincipalDisplayName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              authPrincipalDisplayName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @return The bytes for authPrincipalDisplayName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getAuthPrincipalDisplayNameBytes() {
          java.lang.Object ref = authPrincipalDisplayName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            authPrincipalDisplayName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @param value The authPrincipalDisplayName to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalDisplayName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalDisplayName_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearAuthPrincipalDisplayName() {
          authPrincipalDisplayName_ = getDefaultInstance().getAuthPrincipalDisplayName();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
          return this;
        }
        /**
         * <code>required string auth_principal_display_name = 4;</code>
         * @param value The bytes for authPrincipalDisplayName to set.
         * @return This builder for chaining.
         */
        public Builder setAuthPrincipalDisplayNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          authPrincipalDisplayName_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
  
        private java.lang.Object policyType_ = "";
        /**
         * <code>required string policy_type = 5;</code>
         * @return Whether the policyType field is set.
         */
        public boolean hasPolicyType() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>required string policy_type = 5;</code>
         * @return The policyType.
         */
        public java.lang.String getPolicyType() {
          java.lang.Object ref = policyType_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              policyType_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string policy_type = 5;</code>
         * @return The bytes for policyType.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getPolicyTypeBytes() {
          java.lang.Object ref = policyType_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            policyType_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string policy_type = 5;</code>
         * @param value The policyType to set.
         * @return This builder for chaining.
         */
        public Builder setPolicyType(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          policyType_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>required string policy_type = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearPolicyType() {
          policyType_ = getDefaultInstance().getPolicyType();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>required string policy_type = 5;</code>
         * @param value The bytes for policyType to set.
         * @return This builder for chaining.
         */
        public Builder setPolicyTypeBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          policyType_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        private java.lang.Object noPermissionType_ = "";
        /**
         * <code>required string no_permission_type = 6;</code>
         * @return Whether the noPermissionType field is set.
         */
        public boolean hasNoPermissionType() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>required string no_permission_type = 6;</code>
         * @return The noPermissionType.
         */
        public java.lang.String getNoPermissionType() {
          java.lang.Object ref = noPermissionType_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              noPermissionType_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string no_permission_type = 6;</code>
         * @return The bytes for noPermissionType.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNoPermissionTypeBytes() {
          java.lang.Object ref = noPermissionType_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            noPermissionType_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string no_permission_type = 6;</code>
         * @param value The noPermissionType to set.
         * @return This builder for chaining.
         */
        public Builder setNoPermissionType(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          noPermissionType_ = value;
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>required string no_permission_type = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearNoPermissionType() {
          noPermissionType_ = getDefaultInstance().getNoPermissionType();
          bitField0_ = (bitField0_ & ~0x00000020);
          onChanged();
          return this;
        }
        /**
         * <code>required string no_permission_type = 6;</code>
         * @param value The bytes for noPermissionType to set.
         * @return This builder for chaining.
         */
        public Builder setNoPermissionTypeBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          noPermissionType_ = value;
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
  
        private java.lang.Object encodedDiagnosticMessage_ = "";
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @return Whether the encodedDiagnosticMessage field is set.
         */
        public boolean hasEncodedDiagnosticMessage() {
          return ((bitField0_ & 0x00000040) != 0);
        }
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @return The encodedDiagnosticMessage.
         */
        public java.lang.String getEncodedDiagnosticMessage() {
          java.lang.Object ref = encodedDiagnosticMessage_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              encodedDiagnosticMessage_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @return The bytes for encodedDiagnosticMessage.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getEncodedDiagnosticMessageBytes() {
          java.lang.Object ref = encodedDiagnosticMessage_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            encodedDiagnosticMessage_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @param value The encodedDiagnosticMessage to set.
         * @return This builder for chaining.
         */
        public Builder setEncodedDiagnosticMessage(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          encodedDiagnosticMessage_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @return This builder for chaining.
         */
        public Builder clearEncodedDiagnosticMessage() {
          encodedDiagnosticMessage_ = getDefaultInstance().getEncodedDiagnosticMessage();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
          return this;
        }
        /**
         * <code>optional string encoded_diagnostic_message = 7;</code>
         * @param value The bytes for encodedDiagnosticMessage to set.
         * @return This builder for chaining.
         */
        public Builder setEncodedDiagnosticMessageBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          encodedDiagnosticMessage_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.AccessDeniedDetail)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AccessDeniedDetail>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<AccessDeniedDetail>() {
        @java.lang.Override
        public AccessDeniedDetail parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AccessDeniedDetail> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AccessDeniedDetail> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AccessDeniedDetail getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface PrimaryKeySchemaOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      boolean hasName();
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      java.lang.String getName();
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
       * @return Whether the type field is set.
       */
      boolean hasType();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
       * @return The type.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType getType();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
       * @return Whether the option field is set.
       */
      boolean hasOption();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
       * @return The option.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption getOption();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema}
     */
    public static final class PrimaryKeySchema extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema)
        PrimaryKeySchemaOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PrimaryKeySchema.class.getName());
      }
      // Use PrimaryKeySchema.newBuilder() to construct.
      private PrimaryKeySchema(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private PrimaryKeySchema() {
        name_ = "";
        type_ = 1;
        option_ = 1;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder.class);
      }
  
      private int bitField0_;
      public static final int NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object name_ = "";
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      @java.lang.Override
      public boolean hasName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      @java.lang.Override
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            name_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TYPE_FIELD_NUMBER = 2;
      private int type_ = 1;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
       * @return Whether the type field is set.
       */
      @java.lang.Override public boolean hasType() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
       * @return The type.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType getType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType.forNumber(type_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType.INTEGER : result;
      }
  
      public static final int OPTION_FIELD_NUMBER = 3;
      private int option_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
       * @return Whether the option field is set.
       */
      @java.lang.Override public boolean hasOption() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
       * @return The option.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption getOption() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption.forNumber(option_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption.AUTO_INCREMENT : 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;
  
        if (!hasName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, type_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeEnum(3, option_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, type_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(3, option_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema) obj;
  
        if (hasName() != other.hasName()) return false;
        if (hasName()) {
          if (!getName()
              .equals(other.getName())) return false;
        }
        if (hasType() != other.hasType()) return false;
        if (hasType()) {
          if (type_ != other.type_) return false;
        }
        if (hasOption() != other.hasOption()) return false;
        if (hasOption()) {
          if (option_ != other.option_) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasName()) {
          hash = (37 * hash) + NAME_FIELD_NUMBER;
          hash = (53 * hash) + getName().hashCode();
        }
        if (hasType()) {
          hash = (37 * hash) + TYPE_FIELD_NUMBER;
          hash = (53 * hash) + type_;
        }
        if (hasOption()) {
          hash = (37 * hash) + OPTION_FIELD_NUMBER;
          hash = (53 * hash) + option_;
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          name_ = "";
          type_ = 1;
          option_ = 1;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.name_ = name_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.type_ = type_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.option_ = option_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance()) return this;
          if (other.hasName()) {
            name_ = other.name_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasType()) {
            setType(other.getType());
          }
          if (other.hasOption()) {
            setOption(other.getOption());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasName()) {
            return false;
          }
          if (!hasType()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  name_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    type_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                case 24: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(3, tmpRaw);
                  } else {
                    option_ = tmpRaw;
                    bitField0_ |= 0x00000004;
                  }
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object name_ = "";
        /**
         * <code>required string name = 1;</code>
         * @return Whether the name field is set.
         */
        public boolean hasName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string name = 1;</code>
         * @return The name.
         */
        public java.lang.String getName() {
          java.lang.Object ref = name_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              name_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @return The bytes for name.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNameBytes() {
          java.lang.Object ref = name_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            name_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The name to set.
         * @return This builder for chaining.
         */
        public Builder setName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearName() {
          name_ = getDefaultInstance().getName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The bytes for name to set.
         * @return This builder for chaining.
         */
        public Builder setNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int type_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
         * @return Whether the type field is set.
         */
        @java.lang.Override public boolean hasType() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
         * @return The type.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType getType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType.forNumber(type_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType.INTEGER : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
         * @param value The type to set.
         * @return This builder for chaining.
         */
        public Builder setType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          type_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyType type = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000002);
          type_ = 1;
          onChanged();
          return this;
        }
  
        private int option_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
         * @return Whether the option field is set.
         */
        @java.lang.Override public boolean hasOption() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
         * @return The option.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption getOption() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption.forNumber(option_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption.AUTO_INCREMENT : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
         * @param value The option to set.
         * @return This builder for chaining.
         */
        public Builder setOption(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeyOption value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000004;
          option_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeyOption option = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearOption() {
          bitField0_ = (bitField0_ & ~0x00000004);
          option_ = 1;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PrimaryKeySchema>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<PrimaryKeySchema>() {
        @java.lang.Override
        public PrimaryKeySchema parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PrimaryKeySchema> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PrimaryKeySchema> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface PartitionRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.PartitionRange)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes begin = 1;</code>
       * @return Whether the begin field is set.
       */
      boolean hasBegin();
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes begin = 1;</code>
       * @return The begin.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getBegin();
  
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes end = 2;</code>
       * @return Whether the end field is set.
       */
      boolean hasEnd();
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes end = 2;</code>
       * @return The end.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getEnd();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PartitionRange}
     */
    public static final class PartitionRange extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.PartitionRange)
        PartitionRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PartitionRange.class.getName());
      }
      // Use PartitionRange.newBuilder() to construct.
      private PartitionRange(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private PartitionRange() {
        begin_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        end_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder.class);
      }
  
      private int bitField0_;
      public static final int BEGIN_FIELD_NUMBER = 1;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString begin_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes begin = 1;</code>
       * @return Whether the begin field is set.
       */
      @java.lang.Override
      public boolean hasBegin() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes begin = 1;</code>
       * @return The begin.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getBegin() {
        return begin_;
      }
  
      public static final int END_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString end_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes end = 2;</code>
       * @return Whether the end field is set.
       */
      @java.lang.Override
      public boolean hasEnd() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * encoded as SQLVariant
       * </pre>
       *
       * <code>required bytes end = 2;</code>
       * @return The end.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getEnd() {
        return end_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasBegin()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasEnd()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBytes(1, begin_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, end_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, begin_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, end_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange) obj;
  
        if (hasBegin() != other.hasBegin()) return false;
        if (hasBegin()) {
          if (!getBegin()
              .equals(other.getBegin())) return false;
        }
        if (hasEnd() != other.hasEnd()) return false;
        if (hasEnd()) {
          if (!getEnd()
              .equals(other.getEnd())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasBegin()) {
          hash = (37 * hash) + BEGIN_FIELD_NUMBER;
          hash = (53 * hash) + getBegin().hashCode();
        }
        if (hasEnd()) {
          hash = (37 * hash) + END_FIELD_NUMBER;
          hash = (53 * hash) + getEnd().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PartitionRange}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.PartitionRange)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          begin_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          end_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.begin_ = begin_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.end_ = end_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.getDefaultInstance()) return this;
          if (other.hasBegin()) {
            setBegin(other.getBegin());
          }
          if (other.hasEnd()) {
            setEnd(other.getEnd());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasBegin()) {
            return false;
          }
          if (!hasEnd()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  begin_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  end_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString begin_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes begin = 1;</code>
         * @return Whether the begin field is set.
         */
        @java.lang.Override
        public boolean hasBegin() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes begin = 1;</code>
         * @return The begin.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getBegin() {
          return begin_;
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes begin = 1;</code>
         * @param value The begin to set.
         * @return This builder for chaining.
         */
        public Builder setBegin(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          begin_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes begin = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearBegin() {
          bitField0_ = (bitField0_ & ~0x00000001);
          begin_ = getDefaultInstance().getBegin();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString end_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes end = 2;</code>
         * @return Whether the end field is set.
         */
        @java.lang.Override
        public boolean hasEnd() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes end = 2;</code>
         * @return The end.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getEnd() {
          return end_;
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes end = 2;</code>
         * @param value The end to set.
         * @return This builder for chaining.
         */
        public Builder setEnd(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          end_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * encoded as SQLVariant
         * </pre>
         *
         * <code>required bytes end = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnd() {
          bitField0_ = (bitField0_ & ~0x00000002);
          end_ = getDefaultInstance().getEnd();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.PartitionRange)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.PartitionRange)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PartitionRange>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<PartitionRange>() {
        @java.lang.Override
        public PartitionRange parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PartitionRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PartitionRange> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DefinedColumnSchemaOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      boolean hasName();
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      java.lang.String getName();
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
       * @return Whether the type field is set.
       */
      boolean hasType();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
       * @return The type.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType getType();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema}
     */
    public static final class DefinedColumnSchema extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema)
        DefinedColumnSchemaOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DefinedColumnSchema.class.getName());
      }
      // Use DefinedColumnSchema.newBuilder() to construct.
      private DefinedColumnSchema(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DefinedColumnSchema() {
        name_ = "";
        type_ = 1;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder.class);
      }
  
      private int bitField0_;
      public static final int NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object name_ = "";
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      @java.lang.Override
      public boolean hasName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      @java.lang.Override
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            name_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TYPE_FIELD_NUMBER = 2;
      private int type_ = 1;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
       * @return Whether the type field is set.
       */
      @java.lang.Override public boolean hasType() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
       * @return The type.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType getType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType.forNumber(type_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType.DCT_INTEGER : 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;
  
        if (!hasName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, type_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, type_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema) obj;
  
        if (hasName() != other.hasName()) return false;
        if (hasName()) {
          if (!getName()
              .equals(other.getName())) return false;
        }
        if (hasType() != other.hasType()) return false;
        if (hasType()) {
          if (type_ != other.type_) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasName()) {
          hash = (37 * hash) + NAME_FIELD_NUMBER;
          hash = (53 * hash) + getName().hashCode();
        }
        if (hasType()) {
          hash = (37 * hash) + TYPE_FIELD_NUMBER;
          hash = (53 * hash) + type_;
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          name_ = "";
          type_ = 1;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.name_ = name_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.type_ = type_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance()) return this;
          if (other.hasName()) {
            name_ = other.name_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasType()) {
            setType(other.getType());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasName()) {
            return false;
          }
          if (!hasType()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  name_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    type_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object name_ = "";
        /**
         * <code>required string name = 1;</code>
         * @return Whether the name field is set.
         */
        public boolean hasName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string name = 1;</code>
         * @return The name.
         */
        public java.lang.String getName() {
          java.lang.Object ref = name_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              name_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @return The bytes for name.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNameBytes() {
          java.lang.Object ref = name_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            name_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The name to set.
         * @return This builder for chaining.
         */
        public Builder setName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearName() {
          name_ = getDefaultInstance().getName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The bytes for name to set.
         * @return This builder for chaining.
         */
        public Builder setNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int type_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
         * @return Whether the type field is set.
         */
        @java.lang.Override public boolean hasType() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
         * @return The type.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType getType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType.forNumber(type_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType.DCT_INTEGER : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
         * @param value The type to set.
         * @return This builder for chaining.
         */
        public Builder setType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          type_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnType type = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000002);
          type_ = 1;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DefinedColumnSchema>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DefinedColumnSchema>() {
        @java.lang.Override
        public DefinedColumnSchema parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DefinedColumnSchema> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DefinedColumnSchema> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableOptionsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableOptions)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional int32 time_to_live = 1;</code>
       * @return Whether the timeToLive field is set.
       */
      boolean hasTimeToLive();
      /**
       * <code>optional int32 time_to_live = 1;</code>
       * @return The timeToLive.
       */
      int getTimeToLive();
  
      /**
       * <code>optional int32 max_versions = 2;</code>
       * @return Whether the maxVersions field is set.
       */
      boolean hasMaxVersions();
      /**
       * <code>optional int32 max_versions = 2;</code>
       * @return The maxVersions.
       */
      int getMaxVersions();
  
      /**
       * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
       * @return Whether the deviationCellVersionInSec field is set.
       */
      boolean hasDeviationCellVersionInSec();
      /**
       * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
       * @return The deviationCellVersionInSec.
       */
      long getDeviationCellVersionInSec();
  
      /**
       * <code>optional bool allow_update = 6;</code>
       * @return Whether the allowUpdate field is set.
       */
      boolean hasAllowUpdate();
      /**
       * <code>optional bool allow_update = 6;</code>
       * @return The allowUpdate.
       */
      boolean getAllowUpdate();
  
      /**
       * <code>optional bool update_full_row = 7;</code>
       * @return Whether the updateFullRow field is set.
       */
      boolean hasUpdateFullRow();
      /**
       * <code>optional bool update_full_row = 7;</code>
       * @return The updateFullRow.
       */
      boolean getUpdateFullRow();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableOptions}
     */
    public static final class TableOptions extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableOptions)
        TableOptionsOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableOptions.class.getName());
      }
      // Use TableOptions.newBuilder() to construct.
      private TableOptions(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableOptions() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder.class);
      }
  
      private int bitField0_;
      public static final int TIME_TO_LIVE_FIELD_NUMBER = 1;
      private int timeToLive_ = 0;
      /**
       * <code>optional int32 time_to_live = 1;</code>
       * @return Whether the timeToLive field is set.
       */
      @java.lang.Override
      public boolean hasTimeToLive() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional int32 time_to_live = 1;</code>
       * @return The timeToLive.
       */
      @java.lang.Override
      public int getTimeToLive() {
        return timeToLive_;
      }
  
      public static final int MAX_VERSIONS_FIELD_NUMBER = 2;
      private int maxVersions_ = 0;
      /**
       * <code>optional int32 max_versions = 2;</code>
       * @return Whether the maxVersions field is set.
       */
      @java.lang.Override
      public boolean hasMaxVersions() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int32 max_versions = 2;</code>
       * @return The maxVersions.
       */
      @java.lang.Override
      public int getMaxVersions() {
        return maxVersions_;
      }
  
      public static final int DEVIATION_CELL_VERSION_IN_SEC_FIELD_NUMBER = 5;
      private long deviationCellVersionInSec_ = 0L;
      /**
       * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
       * @return Whether the deviationCellVersionInSec field is set.
       */
      @java.lang.Override
      public boolean hasDeviationCellVersionInSec() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
       * @return The deviationCellVersionInSec.
       */
      @java.lang.Override
      public long getDeviationCellVersionInSec() {
        return deviationCellVersionInSec_;
      }
  
      public static final int ALLOW_UPDATE_FIELD_NUMBER = 6;
      private boolean allowUpdate_ = false;
      /**
       * <code>optional bool allow_update = 6;</code>
       * @return Whether the allowUpdate field is set.
       */
      @java.lang.Override
      public boolean hasAllowUpdate() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bool allow_update = 6;</code>
       * @return The allowUpdate.
       */
      @java.lang.Override
      public boolean getAllowUpdate() {
        return allowUpdate_;
      }
  
      public static final int UPDATE_FULL_ROW_FIELD_NUMBER = 7;
      private boolean updateFullRow_ = false;
      /**
       * <code>optional bool update_full_row = 7;</code>
       * @return Whether the updateFullRow field is set.
       */
      @java.lang.Override
      public boolean hasUpdateFullRow() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional bool update_full_row = 7;</code>
       * @return The updateFullRow.
       */
      @java.lang.Override
      public boolean getUpdateFullRow() {
        return updateFullRow_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeInt32(1, timeToLive_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, maxVersions_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(5, deviationCellVersionInSec_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBool(6, allowUpdate_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeBool(7, updateFullRow_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(1, timeToLive_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, maxVersions_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(5, deviationCellVersionInSec_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(6, allowUpdate_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(7, updateFullRow_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions) obj;
  
        if (hasTimeToLive() != other.hasTimeToLive()) return false;
        if (hasTimeToLive()) {
          if (getTimeToLive()
              != other.getTimeToLive()) return false;
        }
        if (hasMaxVersions() != other.hasMaxVersions()) return false;
        if (hasMaxVersions()) {
          if (getMaxVersions()
              != other.getMaxVersions()) return false;
        }
        if (hasDeviationCellVersionInSec() != other.hasDeviationCellVersionInSec()) return false;
        if (hasDeviationCellVersionInSec()) {
          if (getDeviationCellVersionInSec()
              != other.getDeviationCellVersionInSec()) return false;
        }
        if (hasAllowUpdate() != other.hasAllowUpdate()) return false;
        if (hasAllowUpdate()) {
          if (getAllowUpdate()
              != other.getAllowUpdate()) return false;
        }
        if (hasUpdateFullRow() != other.hasUpdateFullRow()) return false;
        if (hasUpdateFullRow()) {
          if (getUpdateFullRow()
              != other.getUpdateFullRow()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTimeToLive()) {
          hash = (37 * hash) + TIME_TO_LIVE_FIELD_NUMBER;
          hash = (53 * hash) + getTimeToLive();
        }
        if (hasMaxVersions()) {
          hash = (37 * hash) + MAX_VERSIONS_FIELD_NUMBER;
          hash = (53 * hash) + getMaxVersions();
        }
        if (hasDeviationCellVersionInSec()) {
          hash = (37 * hash) + DEVIATION_CELL_VERSION_IN_SEC_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getDeviationCellVersionInSec());
        }
        if (hasAllowUpdate()) {
          hash = (37 * hash) + ALLOW_UPDATE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getAllowUpdate());
        }
        if (hasUpdateFullRow()) {
          hash = (37 * hash) + UPDATE_FULL_ROW_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getUpdateFullRow());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableOptions}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableOptions)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          timeToLive_ = 0;
          maxVersions_ = 0;
          deviationCellVersionInSec_ = 0L;
          allowUpdate_ = false;
          updateFullRow_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.timeToLive_ = timeToLive_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.maxVersions_ = maxVersions_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.deviationCellVersionInSec_ = deviationCellVersionInSec_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.allowUpdate_ = allowUpdate_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.updateFullRow_ = updateFullRow_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance()) return this;
          if (other.hasTimeToLive()) {
            setTimeToLive(other.getTimeToLive());
          }
          if (other.hasMaxVersions()) {
            setMaxVersions(other.getMaxVersions());
          }
          if (other.hasDeviationCellVersionInSec()) {
            setDeviationCellVersionInSec(other.getDeviationCellVersionInSec());
          }
          if (other.hasAllowUpdate()) {
            setAllowUpdate(other.getAllowUpdate());
          }
          if (other.hasUpdateFullRow()) {
            setUpdateFullRow(other.getUpdateFullRow());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  timeToLive_ = input.readInt32();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  maxVersions_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 40: {
                  deviationCellVersionInSec_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 40
                case 48: {
                  allowUpdate_ = input.readBool();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 48
                case 56: {
                  updateFullRow_ = input.readBool();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 56
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int timeToLive_ ;
        /**
         * <code>optional int32 time_to_live = 1;</code>
         * @return Whether the timeToLive field is set.
         */
        @java.lang.Override
        public boolean hasTimeToLive() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional int32 time_to_live = 1;</code>
         * @return The timeToLive.
         */
        @java.lang.Override
        public int getTimeToLive() {
          return timeToLive_;
        }
        /**
         * <code>optional int32 time_to_live = 1;</code>
         * @param value The timeToLive to set.
         * @return This builder for chaining.
         */
        public Builder setTimeToLive(int value) {
  
          timeToLive_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 time_to_live = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTimeToLive() {
          bitField0_ = (bitField0_ & ~0x00000001);
          timeToLive_ = 0;
          onChanged();
          return this;
        }
  
        private int maxVersions_ ;
        /**
         * <code>optional int32 max_versions = 2;</code>
         * @return Whether the maxVersions field is set.
         */
        @java.lang.Override
        public boolean hasMaxVersions() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int32 max_versions = 2;</code>
         * @return The maxVersions.
         */
        @java.lang.Override
        public int getMaxVersions() {
          return maxVersions_;
        }
        /**
         * <code>optional int32 max_versions = 2;</code>
         * @param value The maxVersions to set.
         * @return This builder for chaining.
         */
        public Builder setMaxVersions(int value) {
  
          maxVersions_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 max_versions = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearMaxVersions() {
          bitField0_ = (bitField0_ & ~0x00000002);
          maxVersions_ = 0;
          onChanged();
          return this;
        }
  
        private long deviationCellVersionInSec_ ;
        /**
         * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
         * @return Whether the deviationCellVersionInSec field is set.
         */
        @java.lang.Override
        public boolean hasDeviationCellVersionInSec() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
         * @return The deviationCellVersionInSec.
         */
        @java.lang.Override
        public long getDeviationCellVersionInSec() {
          return deviationCellVersionInSec_;
        }
        /**
         * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
         * @param value The deviationCellVersionInSec to set.
         * @return This builder for chaining.
         */
        public Builder setDeviationCellVersionInSec(long value) {
  
          deviationCellVersionInSec_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 deviation_cell_version_in_sec = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearDeviationCellVersionInSec() {
          bitField0_ = (bitField0_ & ~0x00000004);
          deviationCellVersionInSec_ = 0L;
          onChanged();
          return this;
        }
  
        private boolean allowUpdate_ ;
        /**
         * <code>optional bool allow_update = 6;</code>
         * @return Whether the allowUpdate field is set.
         */
        @java.lang.Override
        public boolean hasAllowUpdate() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bool allow_update = 6;</code>
         * @return The allowUpdate.
         */
        @java.lang.Override
        public boolean getAllowUpdate() {
          return allowUpdate_;
        }
        /**
         * <code>optional bool allow_update = 6;</code>
         * @param value The allowUpdate to set.
         * @return This builder for chaining.
         */
        public Builder setAllowUpdate(boolean value) {
  
          allowUpdate_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool allow_update = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearAllowUpdate() {
          bitField0_ = (bitField0_ & ~0x00000008);
          allowUpdate_ = false;
          onChanged();
          return this;
        }
  
        private boolean updateFullRow_ ;
        /**
         * <code>optional bool update_full_row = 7;</code>
         * @return Whether the updateFullRow field is set.
         */
        @java.lang.Override
        public boolean hasUpdateFullRow() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional bool update_full_row = 7;</code>
         * @return The updateFullRow.
         */
        @java.lang.Override
        public boolean getUpdateFullRow() {
          return updateFullRow_;
        }
        /**
         * <code>optional bool update_full_row = 7;</code>
         * @param value The updateFullRow to set.
         * @return This builder for chaining.
         */
        public Builder setUpdateFullRow(boolean value) {
  
          updateFullRow_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool update_full_row = 7;</code>
         * @return This builder for chaining.
         */
        public Builder clearUpdateFullRow() {
          bitField0_ = (bitField0_ & ~0x00000010);
          updateFullRow_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableOptions)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableOptions)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableOptions>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableOptions>() {
        @java.lang.Override
        public TableOptions parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableOptions> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableOptions> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface IndexMetaOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.IndexMeta)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      boolean hasName();
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      java.lang.String getName();
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes();
  
      /**
       * <code>repeated string primary_key = 2;</code>
       * @return A list containing the primaryKey.
       */
      java.util.List<java.lang.String>
          getPrimaryKeyList();
      /**
       * <code>repeated string primary_key = 2;</code>
       * @return The count of primaryKey.
       */
      int getPrimaryKeyCount();
      /**
       * <code>repeated string primary_key = 2;</code>
       * @param index The index of the element to return.
       * @return The primaryKey at the given index.
       */
      java.lang.String getPrimaryKey(int index);
      /**
       * <code>repeated string primary_key = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the primaryKey at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getPrimaryKeyBytes(int index);
  
      /**
       * <code>repeated string defined_column = 3;</code>
       * @return A list containing the definedColumn.
       */
      java.util.List<java.lang.String>
          getDefinedColumnList();
      /**
       * <code>repeated string defined_column = 3;</code>
       * @return The count of definedColumn.
       */
      int getDefinedColumnCount();
      /**
       * <code>repeated string defined_column = 3;</code>
       * @param index The index of the element to return.
       * @return The definedColumn at the given index.
       */
      java.lang.String getDefinedColumn(int index);
      /**
       * <code>repeated string defined_column = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the definedColumn at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getDefinedColumnBytes(int index);
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
       * @return Whether the indexUpdateMode field is set.
       */
      boolean hasIndexUpdateMode();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
       * @return The indexUpdateMode.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode getIndexUpdateMode();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
       * @return Whether the indexType field is set.
       */
      boolean hasIndexType();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
       * @return The indexType.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType getIndexType();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
       * @return Whether the indexSyncPhase field is set.
       */
      boolean hasIndexSyncPhase();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
       * @return The indexSyncPhase.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase getIndexSyncPhase();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.IndexMeta}
     */
    public static final class IndexMeta extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.IndexMeta)
        IndexMetaOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          IndexMeta.class.getName());
      }
      // Use IndexMeta.newBuilder() to construct.
      private IndexMeta(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private IndexMeta() {
        name_ = "";
        primaryKey_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        definedColumn_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        indexUpdateMode_ = 0;
        indexType_ = 0;
        indexSyncPhase_ = 0;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder.class);
      }
  
      private int bitField0_;
      public static final int NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object name_ = "";
      /**
       * <code>required string name = 1;</code>
       * @return Whether the name field is set.
       */
      @java.lang.Override
      public boolean hasName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string name = 1;</code>
       * @return The name.
       */
      @java.lang.Override
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            name_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string name = 1;</code>
       * @return The bytes for name.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PRIMARY_KEY_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList primaryKey_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string primary_key = 2;</code>
       * @return A list containing the primaryKey.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getPrimaryKeyList() {
        return primaryKey_;
      }
      /**
       * <code>repeated string primary_key = 2;</code>
       * @return The count of primaryKey.
       */
      public int getPrimaryKeyCount() {
        return primaryKey_.size();
      }
      /**
       * <code>repeated string primary_key = 2;</code>
       * @param index The index of the element to return.
       * @return The primaryKey at the given index.
       */
      public java.lang.String getPrimaryKey(int index) {
        return primaryKey_.get(index);
      }
      /**
       * <code>repeated string primary_key = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the primaryKey at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getPrimaryKeyBytes(int index) {
        return primaryKey_.getByteString(index);
      }
  
      public static final int DEFINED_COLUMN_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList definedColumn_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string defined_column = 3;</code>
       * @return A list containing the definedColumn.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getDefinedColumnList() {
        return definedColumn_;
      }
      /**
       * <code>repeated string defined_column = 3;</code>
       * @return The count of definedColumn.
       */
      public int getDefinedColumnCount() {
        return definedColumn_.size();
      }
      /**
       * <code>repeated string defined_column = 3;</code>
       * @param index The index of the element to return.
       * @return The definedColumn at the given index.
       */
      public java.lang.String getDefinedColumn(int index) {
        return definedColumn_.get(index);
      }
      /**
       * <code>repeated string defined_column = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the definedColumn at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getDefinedColumnBytes(int index) {
        return definedColumn_.getByteString(index);
      }
  
      public static final int INDEX_UPDATE_MODE_FIELD_NUMBER = 4;
      private int indexUpdateMode_ = 0;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
       * @return Whether the indexUpdateMode field is set.
       */
      @java.lang.Override public boolean hasIndexUpdateMode() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
       * @return The indexUpdateMode.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode getIndexUpdateMode() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode.forNumber(indexUpdateMode_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode.IUM_ASYNC_INDEX : result;
      }
  
      public static final int INDEX_TYPE_FIELD_NUMBER = 5;
      private int indexType_ = 0;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
       * @return Whether the indexType field is set.
       */
      @java.lang.Override public boolean hasIndexType() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
       * @return The indexType.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType getIndexType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType.forNumber(indexType_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType.IT_GLOBAL_INDEX : result;
      }
  
      public static final int INDEX_SYNC_PHASE_FIELD_NUMBER = 6;
      private int indexSyncPhase_ = 0;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
       * @return Whether the indexSyncPhase field is set.
       */
      @java.lang.Override public boolean hasIndexSyncPhase() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
       * @return The indexSyncPhase.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase getIndexSyncPhase() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase.forNumber(indexSyncPhase_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase.ISP_INVALID : 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;
  
        if (!hasName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasIndexUpdateMode()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasIndexType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
        }
        for (int i = 0; i < primaryKey_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, primaryKey_.getRaw(i));
        }
        for (int i = 0; i < definedColumn_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, definedColumn_.getRaw(i));
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(4, indexUpdateMode_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeEnum(5, indexType_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeEnum(6, indexSyncPhase_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < primaryKey_.size(); i++) {
            dataSize += computeStringSizeNoTag(primaryKey_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getPrimaryKeyList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < definedColumn_.size(); i++) {
            dataSize += computeStringSizeNoTag(definedColumn_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getDefinedColumnList().size();
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(4, indexUpdateMode_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(5, indexType_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(6, indexSyncPhase_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta) obj;
  
        if (hasName() != other.hasName()) return false;
        if (hasName()) {
          if (!getName()
              .equals(other.getName())) return false;
        }
        if (!getPrimaryKeyList()
            .equals(other.getPrimaryKeyList())) return false;
        if (!getDefinedColumnList()
            .equals(other.getDefinedColumnList())) return false;
        if (hasIndexUpdateMode() != other.hasIndexUpdateMode()) return false;
        if (hasIndexUpdateMode()) {
          if (indexUpdateMode_ != other.indexUpdateMode_) return false;
        }
        if (hasIndexType() != other.hasIndexType()) return false;
        if (hasIndexType()) {
          if (indexType_ != other.indexType_) return false;
        }
        if (hasIndexSyncPhase() != other.hasIndexSyncPhase()) return false;
        if (hasIndexSyncPhase()) {
          if (indexSyncPhase_ != other.indexSyncPhase_) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasName()) {
          hash = (37 * hash) + NAME_FIELD_NUMBER;
          hash = (53 * hash) + getName().hashCode();
        }
        if (getPrimaryKeyCount() > 0) {
          hash = (37 * hash) + PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrimaryKeyList().hashCode();
        }
        if (getDefinedColumnCount() > 0) {
          hash = (37 * hash) + DEFINED_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getDefinedColumnList().hashCode();
        }
        if (hasIndexUpdateMode()) {
          hash = (37 * hash) + INDEX_UPDATE_MODE_FIELD_NUMBER;
          hash = (53 * hash) + indexUpdateMode_;
        }
        if (hasIndexType()) {
          hash = (37 * hash) + INDEX_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + indexType_;
        }
        if (hasIndexSyncPhase()) {
          hash = (37 * hash) + INDEX_SYNC_PHASE_FIELD_NUMBER;
          hash = (53 * hash) + indexSyncPhase_;
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.IndexMeta}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.IndexMeta)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          name_ = "";
          primaryKey_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          definedColumn_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          indexUpdateMode_ = 0;
          indexType_ = 0;
          indexSyncPhase_ = 0;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.name_ = name_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            primaryKey_.makeImmutable();
            result.primaryKey_ = primaryKey_;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            definedColumn_.makeImmutable();
            result.definedColumn_ = definedColumn_;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.indexUpdateMode_ = indexUpdateMode_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.indexType_ = indexType_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.indexSyncPhase_ = indexSyncPhase_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance()) return this;
          if (other.hasName()) {
            name_ = other.name_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (!other.primaryKey_.isEmpty()) {
            if (primaryKey_.isEmpty()) {
              primaryKey_ = other.primaryKey_;
              bitField0_ |= 0x00000002;
            } else {
              ensurePrimaryKeyIsMutable();
              primaryKey_.addAll(other.primaryKey_);
            }
            onChanged();
          }
          if (!other.definedColumn_.isEmpty()) {
            if (definedColumn_.isEmpty()) {
              definedColumn_ = other.definedColumn_;
              bitField0_ |= 0x00000004;
            } else {
              ensureDefinedColumnIsMutable();
              definedColumn_.addAll(other.definedColumn_);
            }
            onChanged();
          }
          if (other.hasIndexUpdateMode()) {
            setIndexUpdateMode(other.getIndexUpdateMode());
          }
          if (other.hasIndexType()) {
            setIndexType(other.getIndexType());
          }
          if (other.hasIndexSyncPhase()) {
            setIndexSyncPhase(other.getIndexSyncPhase());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasName()) {
            return false;
          }
          if (!hasIndexUpdateMode()) {
            return false;
          }
          if (!hasIndexType()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  name_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensurePrimaryKeyIsMutable();
                  primaryKey_.add(bs);
                  break;
                } // case 18
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureDefinedColumnIsMutable();
                  definedColumn_.add(bs);
                  break;
                } // case 26
                case 32: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(4, tmpRaw);
                  } else {
                    indexUpdateMode_ = tmpRaw;
                    bitField0_ |= 0x00000008;
                  }
                  break;
                } // case 32
                case 40: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(5, tmpRaw);
                  } else {
                    indexType_ = tmpRaw;
                    bitField0_ |= 0x00000010;
                  }
                  break;
                } // case 40
                case 48: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(6, tmpRaw);
                  } else {
                    indexSyncPhase_ = tmpRaw;
                    bitField0_ |= 0x00000020;
                  }
                  break;
                } // case 48
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object name_ = "";
        /**
         * <code>required string name = 1;</code>
         * @return Whether the name field is set.
         */
        public boolean hasName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string name = 1;</code>
         * @return The name.
         */
        public java.lang.String getName() {
          java.lang.Object ref = name_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              name_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @return The bytes for name.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNameBytes() {
          java.lang.Object ref = name_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            name_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The name to set.
         * @return This builder for chaining.
         */
        public Builder setName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearName() {
          name_ = getDefaultInstance().getName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string name = 1;</code>
         * @param value The bytes for name to set.
         * @return This builder for chaining.
         */
        public Builder setNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          name_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList primaryKey_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensurePrimaryKeyIsMutable() {
          if (!primaryKey_.isModifiable()) {
            primaryKey_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(primaryKey_);
          }
          bitField0_ |= 0x00000002;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @return A list containing the primaryKey.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getPrimaryKeyList() {
          primaryKey_.makeImmutable();
          return primaryKey_;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @return The count of primaryKey.
         */
        public int getPrimaryKeyCount() {
          return primaryKey_.size();
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param index The index of the element to return.
         * @return The primaryKey at the given index.
         */
        public java.lang.String getPrimaryKey(int index) {
          return primaryKey_.get(index);
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param index The index of the value to return.
         * @return The bytes of the primaryKey at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getPrimaryKeyBytes(int index) {
          return primaryKey_.getByteString(index);
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param index The index to set the value at.
         * @param value The primaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setPrimaryKey(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensurePrimaryKeyIsMutable();
          primaryKey_.set(index, value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param value The primaryKey to add.
         * @return This builder for chaining.
         */
        public Builder addPrimaryKey(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensurePrimaryKeyIsMutable();
          primaryKey_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param values The primaryKey to add.
         * @return This builder for chaining.
         */
        public Builder addAllPrimaryKey(
            java.lang.Iterable<java.lang.String> values) {
          ensurePrimaryKeyIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, primaryKey_);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearPrimaryKey() {
          primaryKey_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string primary_key = 2;</code>
         * @param value The bytes of the primaryKey to add.
         * @return This builder for chaining.
         */
        public Builder addPrimaryKeyBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensurePrimaryKeyIsMutable();
          primaryKey_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList definedColumn_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureDefinedColumnIsMutable() {
          if (!definedColumn_.isModifiable()) {
            definedColumn_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(definedColumn_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @return A list containing the definedColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getDefinedColumnList() {
          definedColumn_.makeImmutable();
          return definedColumn_;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @return The count of definedColumn.
         */
        public int getDefinedColumnCount() {
          return definedColumn_.size();
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param index The index of the element to return.
         * @return The definedColumn at the given index.
         */
        public java.lang.String getDefinedColumn(int index) {
          return definedColumn_.get(index);
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param index The index of the value to return.
         * @return The bytes of the definedColumn at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getDefinedColumnBytes(int index) {
          return definedColumn_.getByteString(index);
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param index The index to set the value at.
         * @param value The definedColumn to set.
         * @return This builder for chaining.
         */
        public Builder setDefinedColumn(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureDefinedColumnIsMutable();
          definedColumn_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param value The definedColumn to add.
         * @return This builder for chaining.
         */
        public Builder addDefinedColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureDefinedColumnIsMutable();
          definedColumn_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param values The definedColumn to add.
         * @return This builder for chaining.
         */
        public Builder addAllDefinedColumn(
            java.lang.Iterable<java.lang.String> values) {
          ensureDefinedColumnIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, definedColumn_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearDefinedColumn() {
          definedColumn_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string defined_column = 3;</code>
         * @param value The bytes of the definedColumn to add.
         * @return This builder for chaining.
         */
        public Builder addDefinedColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureDefinedColumnIsMutable();
          definedColumn_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        private int indexUpdateMode_ = 0;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
         * @return Whether the indexUpdateMode field is set.
         */
        @java.lang.Override public boolean hasIndexUpdateMode() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
         * @return The indexUpdateMode.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode getIndexUpdateMode() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode.forNumber(indexUpdateMode_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode.IUM_ASYNC_INDEX : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
         * @param value The indexUpdateMode to set.
         * @return This builder for chaining.
         */
        public Builder setIndexUpdateMode(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexUpdateMode value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000008;
          indexUpdateMode_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexUpdateMode index_update_mode = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearIndexUpdateMode() {
          bitField0_ = (bitField0_ & ~0x00000008);
          indexUpdateMode_ = 0;
          onChanged();
          return this;
        }
  
        private int indexType_ = 0;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
         * @return Whether the indexType field is set.
         */
        @java.lang.Override public boolean hasIndexType() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
         * @return The indexType.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType getIndexType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType.forNumber(indexType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType.IT_GLOBAL_INDEX : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
         * @param value The indexType to set.
         * @return This builder for chaining.
         */
        public Builder setIndexType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000010;
          indexType_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexType index_type = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearIndexType() {
          bitField0_ = (bitField0_ & ~0x00000010);
          indexType_ = 0;
          onChanged();
          return this;
        }
  
        private int indexSyncPhase_ = 0;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
         * @return Whether the indexSyncPhase field is set.
         */
        @java.lang.Override public boolean hasIndexSyncPhase() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
         * @return The indexSyncPhase.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase getIndexSyncPhase() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase.forNumber(indexSyncPhase_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase.ISP_INVALID : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
         * @param value The indexSyncPhase to set.
         * @return This builder for chaining.
         */
        public Builder setIndexSyncPhase(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexSyncPhase value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000020;
          indexSyncPhase_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.IndexSyncPhase index_sync_phase = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearIndexSyncPhase() {
          bitField0_ = (bitField0_ & ~0x00000020);
          indexSyncPhase_ = 0;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.IndexMeta)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.IndexMeta)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<IndexMeta>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<IndexMeta>() {
        @java.lang.Override
        public IndexMeta parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<IndexMeta> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<IndexMeta> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableMetaOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableMeta)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> 
          getPrimaryKeyList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getPrimaryKey(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      int getPrimaryKeyCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
          getPrimaryKeyOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getPrimaryKeyOrBuilder(
          int index);
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> 
          getDefinedColumnList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefinedColumn(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      int getDefinedColumnCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
          getDefinedColumnOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getDefinedColumnOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableMeta}
     */
    public static final class TableMeta extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableMeta)
        TableMetaOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableMeta.class.getName());
      }
      // Use TableMeta.newBuilder() to construct.
      private TableMeta(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableMeta() {
        tableName_ = "";
        primaryKey_ = java.util.Collections.emptyList();
        definedColumn_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PRIMARY_KEY_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> primaryKey_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> getPrimaryKeyList() {
        return primaryKey_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
          getPrimaryKeyOrBuilderList() {
        return primaryKey_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      @java.lang.Override
      public int getPrimaryKeyCount() {
        return primaryKey_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getPrimaryKey(int index) {
        return primaryKey_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getPrimaryKeyOrBuilder(
          int index) {
        return primaryKey_.get(index);
      }
  
      public static final int DEFINED_COLUMN_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> definedColumn_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> getDefinedColumnList() {
        return definedColumn_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
          getDefinedColumnOrBuilderList() {
        return definedColumn_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      @java.lang.Override
      public int getDefinedColumnCount() {
        return definedColumn_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefinedColumn(int index) {
        return definedColumn_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getDefinedColumnOrBuilder(
          int index) {
        return definedColumn_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getPrimaryKeyCount(); i++) {
          if (!getPrimaryKey(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        for (int i = 0; i < getDefinedColumnCount(); i++) {
          if (!getDefinedColumn(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < primaryKey_.size(); i++) {
          output.writeMessage(2, primaryKey_.get(i));
        }
        for (int i = 0; i < definedColumn_.size(); i++) {
          output.writeMessage(3, definedColumn_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < primaryKey_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, primaryKey_.get(i));
        }
        for (int i = 0; i < definedColumn_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, definedColumn_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getPrimaryKeyList()
            .equals(other.getPrimaryKeyList())) return false;
        if (!getDefinedColumnList()
            .equals(other.getDefinedColumnList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getPrimaryKeyCount() > 0) {
          hash = (37 * hash) + PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrimaryKeyList().hashCode();
        }
        if (getDefinedColumnCount() > 0) {
          hash = (37 * hash) + DEFINED_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getDefinedColumnList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableMeta}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableMeta)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (primaryKeyBuilder_ == null) {
            primaryKey_ = java.util.Collections.emptyList();
          } else {
            primaryKey_ = null;
            primaryKeyBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          if (definedColumnBuilder_ == null) {
            definedColumn_ = java.util.Collections.emptyList();
          } else {
            definedColumn_ = null;
            definedColumnBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000004);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta result) {
          if (primaryKeyBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              primaryKey_ = java.util.Collections.unmodifiableList(primaryKey_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.primaryKey_ = primaryKey_;
          } else {
            result.primaryKey_ = primaryKeyBuilder_.build();
          }
          if (definedColumnBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0)) {
              definedColumn_ = java.util.Collections.unmodifiableList(definedColumn_);
              bitField0_ = (bitField0_ & ~0x00000004);
            }
            result.definedColumn_ = definedColumn_;
          } else {
            result.definedColumn_ = definedColumnBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (primaryKeyBuilder_ == null) {
            if (!other.primaryKey_.isEmpty()) {
              if (primaryKey_.isEmpty()) {
                primaryKey_ = other.primaryKey_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensurePrimaryKeyIsMutable();
                primaryKey_.addAll(other.primaryKey_);
              }
              onChanged();
            }
          } else {
            if (!other.primaryKey_.isEmpty()) {
              if (primaryKeyBuilder_.isEmpty()) {
                primaryKeyBuilder_.dispose();
                primaryKeyBuilder_ = null;
                primaryKey_ = other.primaryKey_;
                bitField0_ = (bitField0_ & ~0x00000002);
                primaryKeyBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getPrimaryKeyFieldBuilder() : null;
              } else {
                primaryKeyBuilder_.addAllMessages(other.primaryKey_);
              }
            }
          }
          if (definedColumnBuilder_ == null) {
            if (!other.definedColumn_.isEmpty()) {
              if (definedColumn_.isEmpty()) {
                definedColumn_ = other.definedColumn_;
                bitField0_ = (bitField0_ & ~0x00000004);
              } else {
                ensureDefinedColumnIsMutable();
                definedColumn_.addAll(other.definedColumn_);
              }
              onChanged();
            }
          } else {
            if (!other.definedColumn_.isEmpty()) {
              if (definedColumnBuilder_.isEmpty()) {
                definedColumnBuilder_.dispose();
                definedColumnBuilder_ = null;
                definedColumn_ = other.definedColumn_;
                bitField0_ = (bitField0_ & ~0x00000004);
                definedColumnBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getDefinedColumnFieldBuilder() : null;
              } else {
                definedColumnBuilder_.addAllMessages(other.definedColumn_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getPrimaryKeyCount(); i++) {
            if (!getPrimaryKey(i).isInitialized()) {
              return false;
            }
          }
          for (int i = 0; i < getDefinedColumnCount(); i++) {
            if (!getDefinedColumn(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.parser(),
                          extensionRegistry);
                  if (primaryKeyBuilder_ == null) {
                    ensurePrimaryKeyIsMutable();
                    primaryKey_.add(m);
                  } else {
                    primaryKeyBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                case 26: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.parser(),
                          extensionRegistry);
                  if (definedColumnBuilder_ == null) {
                    ensureDefinedColumnIsMutable();
                    definedColumn_.add(m);
                  } else {
                    definedColumnBuilder_.addMessage(m);
                  }
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> primaryKey_ =
          java.util.Collections.emptyList();
        private void ensurePrimaryKeyIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            primaryKey_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema>(primaryKey_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> primaryKeyBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> getPrimaryKeyList() {
          if (primaryKeyBuilder_ == null) {
            return java.util.Collections.unmodifiableList(primaryKey_);
          } else {
            return primaryKeyBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public int getPrimaryKeyCount() {
          if (primaryKeyBuilder_ == null) {
            return primaryKey_.size();
          } else {
            return primaryKeyBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getPrimaryKey(int index) {
          if (primaryKeyBuilder_ == null) {
            return primaryKey_.get(index);
          } else {
            return primaryKeyBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder setPrimaryKey(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (primaryKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrimaryKeyIsMutable();
            primaryKey_.set(index, value);
            onChanged();
          } else {
            primaryKeyBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder setPrimaryKey(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (primaryKeyBuilder_ == null) {
            ensurePrimaryKeyIsMutable();
            primaryKey_.set(index, builderForValue.build());
            onChanged();
          } else {
            primaryKeyBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder addPrimaryKey(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (primaryKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrimaryKeyIsMutable();
            primaryKey_.add(value);
            onChanged();
          } else {
            primaryKeyBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder addPrimaryKey(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (primaryKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrimaryKeyIsMutable();
            primaryKey_.add(index, value);
            onChanged();
          } else {
            primaryKeyBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder addPrimaryKey(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (primaryKeyBuilder_ == null) {
            ensurePrimaryKeyIsMutable();
            primaryKey_.add(builderForValue.build());
            onChanged();
          } else {
            primaryKeyBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder addPrimaryKey(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (primaryKeyBuilder_ == null) {
            ensurePrimaryKeyIsMutable();
            primaryKey_.add(index, builderForValue.build());
            onChanged();
          } else {
            primaryKeyBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder addAllPrimaryKey(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> values) {
          if (primaryKeyBuilder_ == null) {
            ensurePrimaryKeyIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, primaryKey_);
            onChanged();
          } else {
            primaryKeyBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder clearPrimaryKey() {
          if (primaryKeyBuilder_ == null) {
            primaryKey_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            primaryKeyBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public Builder removePrimaryKey(int index) {
          if (primaryKeyBuilder_ == null) {
            ensurePrimaryKeyIsMutable();
            primaryKey_.remove(index);
            onChanged();
          } else {
            primaryKeyBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder getPrimaryKeyBuilder(
            int index) {
          return getPrimaryKeyFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getPrimaryKeyOrBuilder(
            int index) {
          if (primaryKeyBuilder_ == null) {
            return primaryKey_.get(index);  } else {
            return primaryKeyBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
             getPrimaryKeyOrBuilderList() {
          if (primaryKeyBuilder_ != null) {
            return primaryKeyBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(primaryKey_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder addPrimaryKeyBuilder() {
          return getPrimaryKeyFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder addPrimaryKeyBuilder(
            int index) {
          return getPrimaryKeyFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema primary_key = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder> 
             getPrimaryKeyBuilderList() {
          return getPrimaryKeyFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
            getPrimaryKeyFieldBuilder() {
          if (primaryKeyBuilder_ == null) {
            primaryKeyBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder>(
                    primaryKey_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            primaryKey_ = null;
          }
          return primaryKeyBuilder_;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> definedColumn_ =
          java.util.Collections.emptyList();
        private void ensureDefinedColumnIsMutable() {
          if (!((bitField0_ & 0x00000004) != 0)) {
            definedColumn_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema>(definedColumn_);
            bitField0_ |= 0x00000004;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> definedColumnBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> getDefinedColumnList() {
          if (definedColumnBuilder_ == null) {
            return java.util.Collections.unmodifiableList(definedColumn_);
          } else {
            return definedColumnBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public int getDefinedColumnCount() {
          if (definedColumnBuilder_ == null) {
            return definedColumn_.size();
          } else {
            return definedColumnBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getDefinedColumn(int index) {
          if (definedColumnBuilder_ == null) {
            return definedColumn_.get(index);
          } else {
            return definedColumnBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder setDefinedColumn(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (definedColumnBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureDefinedColumnIsMutable();
            definedColumn_.set(index, value);
            onChanged();
          } else {
            definedColumnBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder setDefinedColumn(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (definedColumnBuilder_ == null) {
            ensureDefinedColumnIsMutable();
            definedColumn_.set(index, builderForValue.build());
            onChanged();
          } else {
            definedColumnBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder addDefinedColumn(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (definedColumnBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureDefinedColumnIsMutable();
            definedColumn_.add(value);
            onChanged();
          } else {
            definedColumnBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder addDefinedColumn(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (definedColumnBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureDefinedColumnIsMutable();
            definedColumn_.add(index, value);
            onChanged();
          } else {
            definedColumnBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder addDefinedColumn(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (definedColumnBuilder_ == null) {
            ensureDefinedColumnIsMutable();
            definedColumn_.add(builderForValue.build());
            onChanged();
          } else {
            definedColumnBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder addDefinedColumn(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (definedColumnBuilder_ == null) {
            ensureDefinedColumnIsMutable();
            definedColumn_.add(index, builderForValue.build());
            onChanged();
          } else {
            definedColumnBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder addAllDefinedColumn(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> values) {
          if (definedColumnBuilder_ == null) {
            ensureDefinedColumnIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, definedColumn_);
            onChanged();
          } else {
            definedColumnBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder clearDefinedColumn() {
          if (definedColumnBuilder_ == null) {
            definedColumn_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000004);
            onChanged();
          } else {
            definedColumnBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public Builder removeDefinedColumn(int index) {
          if (definedColumnBuilder_ == null) {
            ensureDefinedColumnIsMutable();
            definedColumn_.remove(index);
            onChanged();
          } else {
            definedColumnBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder getDefinedColumnBuilder(
            int index) {
          return getDefinedColumnFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getDefinedColumnOrBuilder(
            int index) {
          if (definedColumnBuilder_ == null) {
            return definedColumn_.get(index);  } else {
            return definedColumnBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
             getDefinedColumnOrBuilderList() {
          if (definedColumnBuilder_ != null) {
            return definedColumnBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(definedColumn_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder addDefinedColumnBuilder() {
          return getDefinedColumnFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder addDefinedColumnBuilder(
            int index) {
          return getDefinedColumnFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema defined_column = 3;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder> 
             getDefinedColumnBuilderList() {
          return getDefinedColumnFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
            getDefinedColumnFieldBuilder() {
          if (definedColumnBuilder_ == null) {
            definedColumnBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder>(
                    definedColumn_,
                    ((bitField0_ & 0x00000004) != 0),
                    getParentForChildren(),
                    isClean());
            definedColumn_ = null;
          }
          return definedColumnBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableMeta)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableMeta)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableMeta>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableMeta>() {
        @java.lang.Override
        public TableMeta parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableMeta> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableMeta> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ConditionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.Condition)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
       * @return Whether the rowExistence field is set.
       */
      boolean hasRowExistence();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
       * @return The rowExistence.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation getRowExistence();
  
      /**
       * <code>optional bytes column_condition = 2;</code>
       * @return Whether the columnCondition field is set.
       */
      boolean hasColumnCondition();
      /**
       * <code>optional bytes column_condition = 2;</code>
       * @return The columnCondition.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getColumnCondition();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Condition}
     */
    public static final class Condition extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.Condition)
        ConditionOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          Condition.class.getName());
      }
      // Use Condition.newBuilder() to construct.
      private Condition(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private Condition() {
        rowExistence_ = 0;
        columnCondition_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder.class);
      }
  
      private int bitField0_;
      public static final int ROW_EXISTENCE_FIELD_NUMBER = 1;
      private int rowExistence_ = 0;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
       * @return Whether the rowExistence field is set.
       */
      @java.lang.Override public boolean hasRowExistence() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
       * @return The rowExistence.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation getRowExistence() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation.forNumber(rowExistence_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation.IGNORE : result;
      }
  
      public static final int COLUMN_CONDITION_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString columnCondition_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes column_condition = 2;</code>
       * @return Whether the columnCondition field is set.
       */
      @java.lang.Override
      public boolean hasColumnCondition() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes column_condition = 2;</code>
       * @return The columnCondition.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getColumnCondition() {
        return columnCondition_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasRowExistence()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeEnum(1, rowExistence_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, columnCondition_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, rowExistence_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, columnCondition_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition) obj;
  
        if (hasRowExistence() != other.hasRowExistence()) return false;
        if (hasRowExistence()) {
          if (rowExistence_ != other.rowExistence_) return false;
        }
        if (hasColumnCondition() != other.hasColumnCondition()) return false;
        if (hasColumnCondition()) {
          if (!getColumnCondition()
              .equals(other.getColumnCondition())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasRowExistence()) {
          hash = (37 * hash) + ROW_EXISTENCE_FIELD_NUMBER;
          hash = (53 * hash) + rowExistence_;
        }
        if (hasColumnCondition()) {
          hash = (37 * hash) + COLUMN_CONDITION_FIELD_NUMBER;
          hash = (53 * hash) + getColumnCondition().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Condition}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.Condition)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          rowExistence_ = 0;
          columnCondition_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.rowExistence_ = rowExistence_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.columnCondition_ = columnCondition_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance()) return this;
          if (other.hasRowExistence()) {
            setRowExistence(other.getRowExistence());
          }
          if (other.hasColumnCondition()) {
            setColumnCondition(other.getColumnCondition());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasRowExistence()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(1, tmpRaw);
                  } else {
                    rowExistence_ = tmpRaw;
                    bitField0_ |= 0x00000001;
                  }
                  break;
                } // case 8
                case 18: {
                  columnCondition_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int rowExistence_ = 0;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
         * @return Whether the rowExistence field is set.
         */
        @java.lang.Override public boolean hasRowExistence() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
         * @return The rowExistence.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation getRowExistence() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation.forNumber(rowExistence_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation.IGNORE : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
         * @param value The rowExistence to set.
         * @return This builder for chaining.
         */
        public Builder setRowExistence(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowExistenceExpectation value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          rowExistence_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.RowExistenceExpectation row_existence = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearRowExistence() {
          bitField0_ = (bitField0_ & ~0x00000001);
          rowExistence_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString columnCondition_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes column_condition = 2;</code>
         * @return Whether the columnCondition field is set.
         */
        @java.lang.Override
        public boolean hasColumnCondition() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional bytes column_condition = 2;</code>
         * @return The columnCondition.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getColumnCondition() {
          return columnCondition_;
        }
        /**
         * <code>optional bytes column_condition = 2;</code>
         * @param value The columnCondition to set.
         * @return This builder for chaining.
         */
        public Builder setColumnCondition(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          columnCondition_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes column_condition = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnCondition() {
          bitField0_ = (bitField0_ & ~0x00000002);
          columnCondition_ = getDefaultInstance().getColumnCondition();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.Condition)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.Condition)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Condition>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<Condition>() {
        @java.lang.Override
        public Condition parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Condition> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Condition> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CapacityUnitOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CapacityUnit)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional int32 read = 1;</code>
       * @return Whether the read field is set.
       */
      boolean hasRead();
      /**
       * <code>optional int32 read = 1;</code>
       * @return The read.
       */
      int getRead();
  
      /**
       * <code>optional int32 write = 2;</code>
       * @return Whether the write field is set.
       */
      boolean hasWrite();
      /**
       * <code>optional int32 write = 2;</code>
       * @return The write.
       */
      int getWrite();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CapacityUnit}
     */
    public static final class CapacityUnit extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CapacityUnit)
        CapacityUnitOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CapacityUnit.class.getName());
      }
      // Use CapacityUnit.newBuilder() to construct.
      private CapacityUnit(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CapacityUnit() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder.class);
      }
  
      private int bitField0_;
      public static final int READ_FIELD_NUMBER = 1;
      private int read_ = 0;
      /**
       * <code>optional int32 read = 1;</code>
       * @return Whether the read field is set.
       */
      @java.lang.Override
      public boolean hasRead() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional int32 read = 1;</code>
       * @return The read.
       */
      @java.lang.Override
      public int getRead() {
        return read_;
      }
  
      public static final int WRITE_FIELD_NUMBER = 2;
      private int write_ = 0;
      /**
       * <code>optional int32 write = 2;</code>
       * @return Whether the write field is set.
       */
      @java.lang.Override
      public boolean hasWrite() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int32 write = 2;</code>
       * @return The write.
       */
      @java.lang.Override
      public int getWrite() {
        return write_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeInt32(1, read_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, write_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(1, read_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, write_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit) obj;
  
        if (hasRead() != other.hasRead()) return false;
        if (hasRead()) {
          if (getRead()
              != other.getRead()) return false;
        }
        if (hasWrite() != other.hasWrite()) return false;
        if (hasWrite()) {
          if (getWrite()
              != other.getWrite()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasRead()) {
          hash = (37 * hash) + READ_FIELD_NUMBER;
          hash = (53 * hash) + getRead();
        }
        if (hasWrite()) {
          hash = (37 * hash) + WRITE_FIELD_NUMBER;
          hash = (53 * hash) + getWrite();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CapacityUnit}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CapacityUnit)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          read_ = 0;
          write_ = 0;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.read_ = read_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.write_ = write_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance()) return this;
          if (other.hasRead()) {
            setRead(other.getRead());
          }
          if (other.hasWrite()) {
            setWrite(other.getWrite());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  read_ = input.readInt32();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  write_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int read_ ;
        /**
         * <code>optional int32 read = 1;</code>
         * @return Whether the read field is set.
         */
        @java.lang.Override
        public boolean hasRead() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional int32 read = 1;</code>
         * @return The read.
         */
        @java.lang.Override
        public int getRead() {
          return read_;
        }
        /**
         * <code>optional int32 read = 1;</code>
         * @param value The read to set.
         * @return This builder for chaining.
         */
        public Builder setRead(int value) {
  
          read_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 read = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearRead() {
          bitField0_ = (bitField0_ & ~0x00000001);
          read_ = 0;
          onChanged();
          return this;
        }
  
        private int write_ ;
        /**
         * <code>optional int32 write = 2;</code>
         * @return Whether the write field is set.
         */
        @java.lang.Override
        public boolean hasWrite() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int32 write = 2;</code>
         * @return The write.
         */
        @java.lang.Override
        public int getWrite() {
          return write_;
        }
        /**
         * <code>optional int32 write = 2;</code>
         * @param value The write to set.
         * @return This builder for chaining.
         */
        public Builder setWrite(int value) {
  
          write_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 write = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearWrite() {
          bitField0_ = (bitField0_ & ~0x00000002);
          write_ = 0;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CapacityUnit)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CapacityUnit)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityUnit>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CapacityUnit>() {
        @java.lang.Override
        public CapacityUnit parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityUnit> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityUnit> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CapacityDataSizeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional int64 read_size = 1;</code>
       * @return Whether the readSize field is set.
       */
      boolean hasReadSize();
      /**
       * <code>optional int64 read_size = 1;</code>
       * @return The readSize.
       */
      long getReadSize();
  
      /**
       * <code>optional int64 write_size = 2;</code>
       * @return Whether the writeSize field is set.
       */
      boolean hasWriteSize();
      /**
       * <code>optional int64 write_size = 2;</code>
       * @return The writeSize.
       */
      long getWriteSize();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize}
     */
    public static final class CapacityDataSize extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize)
        CapacityDataSizeOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CapacityDataSize.class.getName());
      }
      // Use CapacityDataSize.newBuilder() to construct.
      private CapacityDataSize(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CapacityDataSize() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder.class);
      }
  
      private int bitField0_;
      public static final int READ_SIZE_FIELD_NUMBER = 1;
      private long readSize_ = 0L;
      /**
       * <code>optional int64 read_size = 1;</code>
       * @return Whether the readSize field is set.
       */
      @java.lang.Override
      public boolean hasReadSize() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional int64 read_size = 1;</code>
       * @return The readSize.
       */
      @java.lang.Override
      public long getReadSize() {
        return readSize_;
      }
  
      public static final int WRITE_SIZE_FIELD_NUMBER = 2;
      private long writeSize_ = 0L;
      /**
       * <code>optional int64 write_size = 2;</code>
       * @return Whether the writeSize field is set.
       */
      @java.lang.Override
      public boolean hasWriteSize() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int64 write_size = 2;</code>
       * @return The writeSize.
       */
      @java.lang.Override
      public long getWriteSize() {
        return writeSize_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeInt64(1, readSize_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt64(2, writeSize_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(1, readSize_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(2, writeSize_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize) obj;
  
        if (hasReadSize() != other.hasReadSize()) return false;
        if (hasReadSize()) {
          if (getReadSize()
              != other.getReadSize()) return false;
        }
        if (hasWriteSize() != other.hasWriteSize()) return false;
        if (hasWriteSize()) {
          if (getWriteSize()
              != other.getWriteSize()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasReadSize()) {
          hash = (37 * hash) + READ_SIZE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getReadSize());
        }
        if (hasWriteSize()) {
          hash = (37 * hash) + WRITE_SIZE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getWriteSize());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          readSize_ = 0L;
          writeSize_ = 0L;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.readSize_ = readSize_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.writeSize_ = writeSize_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance()) return this;
          if (other.hasReadSize()) {
            setReadSize(other.getReadSize());
          }
          if (other.hasWriteSize()) {
            setWriteSize(other.getWriteSize());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  readSize_ = input.readInt64();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  writeSize_ = input.readInt64();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private long readSize_ ;
        /**
         * <code>optional int64 read_size = 1;</code>
         * @return Whether the readSize field is set.
         */
        @java.lang.Override
        public boolean hasReadSize() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional int64 read_size = 1;</code>
         * @return The readSize.
         */
        @java.lang.Override
        public long getReadSize() {
          return readSize_;
        }
        /**
         * <code>optional int64 read_size = 1;</code>
         * @param value The readSize to set.
         * @return This builder for chaining.
         */
        public Builder setReadSize(long value) {
  
          readSize_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 read_size = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearReadSize() {
          bitField0_ = (bitField0_ & ~0x00000001);
          readSize_ = 0L;
          onChanged();
          return this;
        }
  
        private long writeSize_ ;
        /**
         * <code>optional int64 write_size = 2;</code>
         * @return Whether the writeSize field is set.
         */
        @java.lang.Override
        public boolean hasWriteSize() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int64 write_size = 2;</code>
         * @return The writeSize.
         */
        @java.lang.Override
        public long getWriteSize() {
          return writeSize_;
        }
        /**
         * <code>optional int64 write_size = 2;</code>
         * @param value The writeSize to set.
         * @return This builder for chaining.
         */
        public Builder setWriteSize(long value) {
  
          writeSize_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 write_size = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearWriteSize() {
          bitField0_ = (bitField0_ & ~0x00000002);
          writeSize_ = 0L;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityDataSize>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CapacityDataSize>() {
        @java.lang.Override
        public CapacityDataSize parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityDataSize> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CapacityDataSize> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ReservedThroughputDetailsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      boolean hasCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder();
  
      /**
       * <code>required int64 last_increase_time = 2;</code>
       * @return Whether the lastIncreaseTime field is set.
       */
      boolean hasLastIncreaseTime();
      /**
       * <code>required int64 last_increase_time = 2;</code>
       * @return The lastIncreaseTime.
       */
      long getLastIncreaseTime();
  
      /**
       * <code>optional int64 last_decrease_time = 3;</code>
       * @return Whether the lastDecreaseTime field is set.
       */
      boolean hasLastDecreaseTime();
      /**
       * <code>optional int64 last_decrease_time = 3;</code>
       * @return The lastDecreaseTime.
       */
      long getLastDecreaseTime();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails}
     */
    public static final class ReservedThroughputDetails extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails)
        ReservedThroughputDetailsOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ReservedThroughputDetails.class.getName());
      }
      // Use ReservedThroughputDetails.newBuilder() to construct.
      private ReservedThroughputDetails(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ReservedThroughputDetails() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder.class);
      }
  
      private int bitField0_;
      public static final int CAPACITY_UNIT_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      @java.lang.Override
      public boolean hasCapacityUnit() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
  
      public static final int LAST_INCREASE_TIME_FIELD_NUMBER = 2;
      private long lastIncreaseTime_ = 0L;
      /**
       * <code>required int64 last_increase_time = 2;</code>
       * @return Whether the lastIncreaseTime field is set.
       */
      @java.lang.Override
      public boolean hasLastIncreaseTime() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required int64 last_increase_time = 2;</code>
       * @return The lastIncreaseTime.
       */
      @java.lang.Override
      public long getLastIncreaseTime() {
        return lastIncreaseTime_;
      }
  
      public static final int LAST_DECREASE_TIME_FIELD_NUMBER = 3;
      private long lastDecreaseTime_ = 0L;
      /**
       * <code>optional int64 last_decrease_time = 3;</code>
       * @return Whether the lastDecreaseTime field is set.
       */
      @java.lang.Override
      public boolean hasLastDecreaseTime() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 last_decrease_time = 3;</code>
       * @return The lastDecreaseTime.
       */
      @java.lang.Override
      public long getLastDecreaseTime() {
        return lastDecreaseTime_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasCapacityUnit()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasLastIncreaseTime()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getCapacityUnit());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt64(2, lastIncreaseTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, lastDecreaseTime_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getCapacityUnit());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(2, lastIncreaseTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, lastDecreaseTime_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails) obj;
  
        if (hasCapacityUnit() != other.hasCapacityUnit()) return false;
        if (hasCapacityUnit()) {
          if (!getCapacityUnit()
              .equals(other.getCapacityUnit())) return false;
        }
        if (hasLastIncreaseTime() != other.hasLastIncreaseTime()) return false;
        if (hasLastIncreaseTime()) {
          if (getLastIncreaseTime()
              != other.getLastIncreaseTime()) return false;
        }
        if (hasLastDecreaseTime() != other.hasLastDecreaseTime()) return false;
        if (hasLastDecreaseTime()) {
          if (getLastDecreaseTime()
              != other.getLastDecreaseTime()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasCapacityUnit()) {
          hash = (37 * hash) + CAPACITY_UNIT_FIELD_NUMBER;
          hash = (53 * hash) + getCapacityUnit().hashCode();
        }
        if (hasLastIncreaseTime()) {
          hash = (37 * hash) + LAST_INCREASE_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getLastIncreaseTime());
        }
        if (hasLastDecreaseTime()) {
          hash = (37 * hash) + LAST_DECREASE_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getLastDecreaseTime());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getCapacityUnitFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          lastIncreaseTime_ = 0L;
          lastDecreaseTime_ = 0L;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.capacityUnit_ = capacityUnitBuilder_ == null
                ? capacityUnit_
                : capacityUnitBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.lastIncreaseTime_ = lastIncreaseTime_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.lastDecreaseTime_ = lastDecreaseTime_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance()) return this;
          if (other.hasCapacityUnit()) {
            mergeCapacityUnit(other.getCapacityUnit());
          }
          if (other.hasLastIncreaseTime()) {
            setLastIncreaseTime(other.getLastIncreaseTime());
          }
          if (other.hasLastDecreaseTime()) {
            setLastDecreaseTime(other.getLastDecreaseTime());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasCapacityUnit()) {
            return false;
          }
          if (!hasLastIncreaseTime()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getCapacityUnitFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  lastIncreaseTime_ = input.readInt64();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 24: {
                  lastDecreaseTime_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> capacityUnitBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return Whether the capacityUnit field is set.
         */
        public boolean hasCapacityUnit() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return The capacityUnit.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
          if (capacityUnitBuilder_ == null) {
            return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          } else {
            return capacityUnitBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            capacityUnit_ = value;
          } else {
            capacityUnitBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder builderForValue) {
          if (capacityUnitBuilder_ == null) {
            capacityUnit_ = builderForValue.build();
          } else {
            capacityUnitBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder mergeCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              capacityUnit_ != null &&
              capacityUnit_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance()) {
              getCapacityUnitBuilder().mergeFrom(value);
            } else {
              capacityUnit_ = value;
            }
          } else {
            capacityUnitBuilder_.mergeFrom(value);
          }
          if (capacityUnit_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder clearCapacityUnit() {
          bitField0_ = (bitField0_ & ~0x00000001);
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder getCapacityUnitBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getCapacityUnitFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
          if (capacityUnitBuilder_ != null) {
            return capacityUnitBuilder_.getMessageOrBuilder();
          } else {
            return capacityUnit_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> 
            getCapacityUnitFieldBuilder() {
          if (capacityUnitBuilder_ == null) {
            capacityUnitBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder>(
                    getCapacityUnit(),
                    getParentForChildren(),
                    isClean());
            capacityUnit_ = null;
          }
          return capacityUnitBuilder_;
        }
  
        private long lastIncreaseTime_ ;
        /**
         * <code>required int64 last_increase_time = 2;</code>
         * @return Whether the lastIncreaseTime field is set.
         */
        @java.lang.Override
        public boolean hasLastIncreaseTime() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required int64 last_increase_time = 2;</code>
         * @return The lastIncreaseTime.
         */
        @java.lang.Override
        public long getLastIncreaseTime() {
          return lastIncreaseTime_;
        }
        /**
         * <code>required int64 last_increase_time = 2;</code>
         * @param value The lastIncreaseTime to set.
         * @return This builder for chaining.
         */
        public Builder setLastIncreaseTime(long value) {
  
          lastIncreaseTime_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required int64 last_increase_time = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearLastIncreaseTime() {
          bitField0_ = (bitField0_ & ~0x00000002);
          lastIncreaseTime_ = 0L;
          onChanged();
          return this;
        }
  
        private long lastDecreaseTime_ ;
        /**
         * <code>optional int64 last_decrease_time = 3;</code>
         * @return Whether the lastDecreaseTime field is set.
         */
        @java.lang.Override
        public boolean hasLastDecreaseTime() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 last_decrease_time = 3;</code>
         * @return The lastDecreaseTime.
         */
        @java.lang.Override
        public long getLastDecreaseTime() {
          return lastDecreaseTime_;
        }
        /**
         * <code>optional int64 last_decrease_time = 3;</code>
         * @param value The lastDecreaseTime to set.
         * @return This builder for chaining.
         */
        public Builder setLastDecreaseTime(long value) {
  
          lastDecreaseTime_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 last_decrease_time = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearLastDecreaseTime() {
          bitField0_ = (bitField0_ & ~0x00000004);
          lastDecreaseTime_ = 0L;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughputDetails>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ReservedThroughputDetails>() {
        @java.lang.Override
        public ReservedThroughputDetails parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughputDetails> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughputDetails> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ReservedThroughputOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      boolean hasCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput}
     */
    public static final class ReservedThroughput extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput)
        ReservedThroughputOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ReservedThroughput.class.getName());
      }
      // Use ReservedThroughput.newBuilder() to construct.
      private ReservedThroughput(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ReservedThroughput() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder.class);
      }
  
      private int bitField0_;
      public static final int CAPACITY_UNIT_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      @java.lang.Override
      public boolean hasCapacityUnit() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasCapacityUnit()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getCapacityUnit());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getCapacityUnit());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput) obj;
  
        if (hasCapacityUnit() != other.hasCapacityUnit()) return false;
        if (hasCapacityUnit()) {
          if (!getCapacityUnit()
              .equals(other.getCapacityUnit())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasCapacityUnit()) {
          hash = (37 * hash) + CAPACITY_UNIT_FIELD_NUMBER;
          hash = (53 * hash) + getCapacityUnit().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getCapacityUnitFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.capacityUnit_ = capacityUnitBuilder_ == null
                ? capacityUnit_
                : capacityUnitBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance()) return this;
          if (other.hasCapacityUnit()) {
            mergeCapacityUnit(other.getCapacityUnit());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasCapacityUnit()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getCapacityUnitFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> capacityUnitBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return Whether the capacityUnit field is set.
         */
        public boolean hasCapacityUnit() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return The capacityUnit.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
          if (capacityUnitBuilder_ == null) {
            return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          } else {
            return capacityUnitBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            capacityUnit_ = value;
          } else {
            capacityUnitBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder builderForValue) {
          if (capacityUnitBuilder_ == null) {
            capacityUnit_ = builderForValue.build();
          } else {
            capacityUnitBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder mergeCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              capacityUnit_ != null &&
              capacityUnit_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance()) {
              getCapacityUnitBuilder().mergeFrom(value);
            } else {
              capacityUnit_ = value;
            }
          } else {
            capacityUnitBuilder_.mergeFrom(value);
          }
          if (capacityUnit_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder clearCapacityUnit() {
          bitField0_ = (bitField0_ & ~0x00000001);
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder getCapacityUnitBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getCapacityUnitFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
          if (capacityUnitBuilder_ != null) {
            return capacityUnitBuilder_.getMessageOrBuilder();
          } else {
            return capacityUnit_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> 
            getCapacityUnitFieldBuilder() {
          if (capacityUnitBuilder_ == null) {
            capacityUnitBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder>(
                    getCapacityUnit(),
                    getParentForChildren(),
                    isClean());
            capacityUnit_ = null;
          }
          return capacityUnitBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughput>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ReservedThroughput>() {
        @java.lang.Override
        public ReservedThroughput parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughput> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReservedThroughput> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ConsumedCapacityOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      boolean hasCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       * @return Whether the capacityDataSize field is set.
       */
      boolean hasCapacityDataSize();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       * @return The capacityDataSize.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getCapacityDataSize();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder getCapacityDataSizeOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity}
     */
    public static final class ConsumedCapacity extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity)
        ConsumedCapacityOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ConsumedCapacity.class.getName());
      }
      // Use ConsumedCapacity.newBuilder() to construct.
      private ConsumedCapacity(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ConsumedCapacity() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder.class);
      }
  
      private int bitField0_;
      public static final int CAPACITY_UNIT_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return Whether the capacityUnit field is set.
       */
      @java.lang.Override
      public boolean hasCapacityUnit() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       * @return The capacityUnit.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
        return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
      }
  
      public static final int CAPACITY_DATA_SIZE_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize capacityDataSize_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       * @return Whether the capacityDataSize field is set.
       */
      @java.lang.Override
      public boolean hasCapacityDataSize() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       * @return The capacityDataSize.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getCapacityDataSize() {
        return capacityDataSize_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance() : capacityDataSize_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder getCapacityDataSizeOrBuilder() {
        return capacityDataSize_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance() : capacityDataSize_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasCapacityUnit()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getCapacityUnit());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getCapacityDataSize());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getCapacityUnit());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getCapacityDataSize());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity) obj;
  
        if (hasCapacityUnit() != other.hasCapacityUnit()) return false;
        if (hasCapacityUnit()) {
          if (!getCapacityUnit()
              .equals(other.getCapacityUnit())) return false;
        }
        if (hasCapacityDataSize() != other.hasCapacityDataSize()) return false;
        if (hasCapacityDataSize()) {
          if (!getCapacityDataSize()
              .equals(other.getCapacityDataSize())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasCapacityUnit()) {
          hash = (37 * hash) + CAPACITY_UNIT_FIELD_NUMBER;
          hash = (53 * hash) + getCapacityUnit().hashCode();
        }
        if (hasCapacityDataSize()) {
          hash = (37 * hash) + CAPACITY_DATA_SIZE_FIELD_NUMBER;
          hash = (53 * hash) + getCapacityDataSize().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getCapacityUnitFieldBuilder();
            getCapacityDataSizeFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          capacityDataSize_ = null;
          if (capacityDataSizeBuilder_ != null) {
            capacityDataSizeBuilder_.dispose();
            capacityDataSizeBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.capacityUnit_ = capacityUnitBuilder_ == null
                ? capacityUnit_
                : capacityUnitBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.capacityDataSize_ = capacityDataSizeBuilder_ == null
                ? capacityDataSize_
                : capacityDataSizeBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) return this;
          if (other.hasCapacityUnit()) {
            mergeCapacityUnit(other.getCapacityUnit());
          }
          if (other.hasCapacityDataSize()) {
            mergeCapacityDataSize(other.getCapacityDataSize());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasCapacityUnit()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getCapacityUnitFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getCapacityDataSizeFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit capacityUnit_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> capacityUnitBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return Whether the capacityUnit field is set.
         */
        public boolean hasCapacityUnit() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         * @return The capacityUnit.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit getCapacityUnit() {
          if (capacityUnitBuilder_ == null) {
            return capacityUnit_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          } else {
            return capacityUnitBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            capacityUnit_ = value;
          } else {
            capacityUnitBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder setCapacityUnit(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder builderForValue) {
          if (capacityUnitBuilder_ == null) {
            capacityUnit_ = builderForValue.build();
          } else {
            capacityUnitBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder mergeCapacityUnit(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit value) {
          if (capacityUnitBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              capacityUnit_ != null &&
              capacityUnit_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance()) {
              getCapacityUnitBuilder().mergeFrom(value);
            } else {
              capacityUnit_ = value;
            }
          } else {
            capacityUnitBuilder_.mergeFrom(value);
          }
          if (capacityUnit_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public Builder clearCapacityUnit() {
          bitField0_ = (bitField0_ & ~0x00000001);
          capacityUnit_ = null;
          if (capacityUnitBuilder_ != null) {
            capacityUnitBuilder_.dispose();
            capacityUnitBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder getCapacityUnitBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getCapacityUnitFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder getCapacityUnitOrBuilder() {
          if (capacityUnitBuilder_ != null) {
            return capacityUnitBuilder_.getMessageOrBuilder();
          } else {
            return capacityUnit_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.getDefaultInstance() : capacityUnit_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.CapacityUnit capacity_unit = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder> 
            getCapacityUnitFieldBuilder() {
          if (capacityUnitBuilder_ == null) {
            capacityUnitBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnit.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityUnitOrBuilder>(
                    getCapacityUnit(),
                    getParentForChildren(),
                    isClean());
            capacityUnit_ = null;
          }
          return capacityUnitBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize capacityDataSize_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder> capacityDataSizeBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         * @return Whether the capacityDataSize field is set.
         */
        public boolean hasCapacityDataSize() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         * @return The capacityDataSize.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize getCapacityDataSize() {
          if (capacityDataSizeBuilder_ == null) {
            return capacityDataSize_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance() : capacityDataSize_;
          } else {
            return capacityDataSizeBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public Builder setCapacityDataSize(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize value) {
          if (capacityDataSizeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            capacityDataSize_ = value;
          } else {
            capacityDataSizeBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public Builder setCapacityDataSize(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder builderForValue) {
          if (capacityDataSizeBuilder_ == null) {
            capacityDataSize_ = builderForValue.build();
          } else {
            capacityDataSizeBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public Builder mergeCapacityDataSize(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize value) {
          if (capacityDataSizeBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              capacityDataSize_ != null &&
              capacityDataSize_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance()) {
              getCapacityDataSizeBuilder().mergeFrom(value);
            } else {
              capacityDataSize_ = value;
            }
          } else {
            capacityDataSizeBuilder_.mergeFrom(value);
          }
          if (capacityDataSize_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public Builder clearCapacityDataSize() {
          bitField0_ = (bitField0_ & ~0x00000002);
          capacityDataSize_ = null;
          if (capacityDataSizeBuilder_ != null) {
            capacityDataSizeBuilder_.dispose();
            capacityDataSizeBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder getCapacityDataSizeBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getCapacityDataSizeFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder getCapacityDataSizeOrBuilder() {
          if (capacityDataSizeBuilder_ != null) {
            return capacityDataSizeBuilder_.getMessageOrBuilder();
          } else {
            return capacityDataSize_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.getDefaultInstance() : capacityDataSize_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.CapacityDataSize capacity_data_size = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder> 
            getCapacityDataSizeFieldBuilder() {
          if (capacityDataSizeBuilder_ == null) {
            capacityDataSizeBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSize.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CapacityDataSizeOrBuilder>(
                    getCapacityDataSize(),
                    getParentForChildren(),
                    isClean());
            capacityDataSize_ = null;
          }
          return capacityDataSizeBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ConsumedCapacity>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ConsumedCapacity>() {
        @java.lang.Override
        public ConsumedCapacity parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ConsumedCapacity> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ConsumedCapacity> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StreamSpecificationOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.StreamSpecification)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return Whether the enableStream field is set.
       */
      boolean hasEnableStream();
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return The enableStream.
       */
      boolean getEnableStream();
  
      /**
       * <code>optional int32 expiration_time = 2;</code>
       * @return Whether the expirationTime field is set.
       */
      boolean hasExpirationTime();
      /**
       * <code>optional int32 expiration_time = 2;</code>
       * @return The expirationTime.
       */
      int getExpirationTime();
  
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      java.util.List<java.lang.String>
          getColumnsToGetList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      int getColumnsToGetCount();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      java.lang.String getColumnsToGet(int index);
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamSpecification}
     */
    public static final class StreamSpecification extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.StreamSpecification)
        StreamSpecificationOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StreamSpecification.class.getName());
      }
      // Use StreamSpecification.newBuilder() to construct.
      private StreamSpecification(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private StreamSpecification() {
        columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder.class);
      }
  
      private int bitField0_;
      public static final int ENABLE_STREAM_FIELD_NUMBER = 1;
      private boolean enableStream_ = false;
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return Whether the enableStream field is set.
       */
      @java.lang.Override
      public boolean hasEnableStream() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return The enableStream.
       */
      @java.lang.Override
      public boolean getEnableStream() {
        return enableStream_;
      }
  
      public static final int EXPIRATION_TIME_FIELD_NUMBER = 2;
      private int expirationTime_ = 0;
      /**
       * <code>optional int32 expiration_time = 2;</code>
       * @return Whether the expirationTime field is set.
       */
      @java.lang.Override
      public boolean hasExpirationTime() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int32 expiration_time = 2;</code>
       * @return The expirationTime.
       */
      @java.lang.Override
      public int getExpirationTime() {
        return expirationTime_;
      }
  
      public static final int COLUMNS_TO_GET_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsToGetList() {
        return columnsToGet_;
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      public int getColumnsToGetCount() {
        return columnsToGet_.size();
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      public java.lang.String getColumnsToGet(int index) {
        return columnsToGet_.get(index);
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index) {
        return columnsToGet_.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;
  
        if (!hasEnableStream()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, enableStream_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, expirationTime_);
        }
        for (int i = 0; i < columnsToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, columnsToGet_.getRaw(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, enableStream_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, expirationTime_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnsToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnsToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsToGetList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification) obj;
  
        if (hasEnableStream() != other.hasEnableStream()) return false;
        if (hasEnableStream()) {
          if (getEnableStream()
              != other.getEnableStream()) return false;
        }
        if (hasExpirationTime() != other.hasExpirationTime()) return false;
        if (hasExpirationTime()) {
          if (getExpirationTime()
              != other.getExpirationTime()) return false;
        }
        if (!getColumnsToGetList()
            .equals(other.getColumnsToGetList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasEnableStream()) {
          hash = (37 * hash) + ENABLE_STREAM_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getEnableStream());
        }
        if (hasExpirationTime()) {
          hash = (37 * hash) + EXPIRATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + getExpirationTime();
        }
        if (getColumnsToGetCount() > 0) {
          hash = (37 * hash) + COLUMNS_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsToGetList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamSpecification}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.StreamSpecification)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          enableStream_ = false;
          expirationTime_ = 0;
          columnsToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.enableStream_ = enableStream_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.expirationTime_ = expirationTime_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            columnsToGet_.makeImmutable();
            result.columnsToGet_ = columnsToGet_;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance()) return this;
          if (other.hasEnableStream()) {
            setEnableStream(other.getEnableStream());
          }
          if (other.hasExpirationTime()) {
            setExpirationTime(other.getExpirationTime());
          }
          if (!other.columnsToGet_.isEmpty()) {
            if (columnsToGet_.isEmpty()) {
              columnsToGet_ = other.columnsToGet_;
              bitField0_ |= 0x00000004;
            } else {
              ensureColumnsToGetIsMutable();
              columnsToGet_.addAll(other.columnsToGet_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasEnableStream()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  enableStream_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  expirationTime_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsToGetIsMutable();
                  columnsToGet_.add(bs);
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean enableStream_ ;
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return Whether the enableStream field is set.
         */
        @java.lang.Override
        public boolean hasEnableStream() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return The enableStream.
         */
        @java.lang.Override
        public boolean getEnableStream() {
          return enableStream_;
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @param value The enableStream to set.
         * @return This builder for chaining.
         */
        public Builder setEnableStream(boolean value) {
  
          enableStream_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnableStream() {
          bitField0_ = (bitField0_ & ~0x00000001);
          enableStream_ = false;
          onChanged();
          return this;
        }
  
        private int expirationTime_ ;
        /**
         * <code>optional int32 expiration_time = 2;</code>
         * @return Whether the expirationTime field is set.
         */
        @java.lang.Override
        public boolean hasExpirationTime() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int32 expiration_time = 2;</code>
         * @return The expirationTime.
         */
        @java.lang.Override
        public int getExpirationTime() {
          return expirationTime_;
        }
        /**
         * <code>optional int32 expiration_time = 2;</code>
         * @param value The expirationTime to set.
         * @return This builder for chaining.
         */
        public Builder setExpirationTime(int value) {
  
          expirationTime_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 expiration_time = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearExpirationTime() {
          bitField0_ = (bitField0_ & ~0x00000002);
          expirationTime_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsToGetIsMutable() {
          if (!columnsToGet_.isModifiable()) {
            columnsToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnsToGet_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return A list containing the columnsToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsToGetList() {
          columnsToGet_.makeImmutable();
          return columnsToGet_;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return The count of columnsToGet.
         */
        public int getColumnsToGetCount() {
          return columnsToGet_.size();
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the element to return.
         * @return The columnsToGet at the given index.
         */
        public java.lang.String getColumnsToGet(int index) {
          return columnsToGet_.get(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnsToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsToGetBytes(int index) {
          return columnsToGet_.getByteString(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index to set the value at.
         * @param value The columnsToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnsToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param values The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnsToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnsToGet_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnsToGet() {
          columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The bytes of the columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.StreamSpecification)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.StreamSpecification)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamSpecification>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StreamSpecification>() {
        @java.lang.Override
        public StreamSpecification parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamSpecification> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamSpecification> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StreamDetailsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.StreamDetails)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return Whether the enableStream field is set.
       */
      boolean hasEnableStream();
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return The enableStream.
       */
      boolean getEnableStream();
  
      /**
       * <code>optional string stream_id = 2;</code>
       * @return Whether the streamId field is set.
       */
      boolean hasStreamId();
      /**
       * <code>optional string stream_id = 2;</code>
       * @return The streamId.
       */
      java.lang.String getStreamId();
      /**
       * <code>optional string stream_id = 2;</code>
       * @return The bytes for streamId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes();
  
      /**
       * <code>optional int32 expiration_time = 3;</code>
       * @return Whether the expirationTime field is set.
       */
      boolean hasExpirationTime();
      /**
       * <code>optional int32 expiration_time = 3;</code>
       * @return The expirationTime.
       */
      int getExpirationTime();
  
      /**
       * <code>optional int64 last_enable_time = 4;</code>
       * @return Whether the lastEnableTime field is set.
       */
      boolean hasLastEnableTime();
      /**
       * <code>optional int64 last_enable_time = 4;</code>
       * @return The lastEnableTime.
       */
      long getLastEnableTime();
  
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @return A list containing the columnToGet.
       */
      java.util.List<java.lang.String>
          getColumnToGetList();
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @return The count of columnToGet.
       */
      int getColumnToGetCount();
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @param index The index of the element to return.
       * @return The columnToGet at the given index.
       */
      java.lang.String getColumnToGet(int index);
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnToGetBytes(int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamDetails}
     */
    public static final class StreamDetails extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.StreamDetails)
        StreamDetailsOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StreamDetails.class.getName());
      }
      // Use StreamDetails.newBuilder() to construct.
      private StreamDetails(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private StreamDetails() {
        streamId_ = "";
        columnToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder.class);
      }
  
      private int bitField0_;
      public static final int ENABLE_STREAM_FIELD_NUMBER = 1;
      private boolean enableStream_ = false;
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return Whether the enableStream field is set.
       */
      @java.lang.Override
      public boolean hasEnableStream() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool enable_stream = 1;</code>
       * @return The enableStream.
       */
      @java.lang.Override
      public boolean getEnableStream() {
        return enableStream_;
      }
  
      public static final int STREAM_ID_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object streamId_ = "";
      /**
       * <code>optional string stream_id = 2;</code>
       * @return Whether the streamId field is set.
       */
      @java.lang.Override
      public boolean hasStreamId() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional string stream_id = 2;</code>
       * @return The streamId.
       */
      @java.lang.Override
      public java.lang.String getStreamId() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            streamId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string stream_id = 2;</code>
       * @return The bytes for streamId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          streamId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int EXPIRATION_TIME_FIELD_NUMBER = 3;
      private int expirationTime_ = 0;
      /**
       * <code>optional int32 expiration_time = 3;</code>
       * @return Whether the expirationTime field is set.
       */
      @java.lang.Override
      public boolean hasExpirationTime() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int32 expiration_time = 3;</code>
       * @return The expirationTime.
       */
      @java.lang.Override
      public int getExpirationTime() {
        return expirationTime_;
      }
  
      public static final int LAST_ENABLE_TIME_FIELD_NUMBER = 4;
      private long lastEnableTime_ = 0L;
      /**
       * <code>optional int64 last_enable_time = 4;</code>
       * @return Whether the lastEnableTime field is set.
       */
      @java.lang.Override
      public boolean hasLastEnableTime() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional int64 last_enable_time = 4;</code>
       * @return The lastEnableTime.
       */
      @java.lang.Override
      public long getLastEnableTime() {
        return lastEnableTime_;
      }
  
      public static final int COLUMN_TO_GET_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @return A list containing the columnToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnToGetList() {
        return columnToGet_;
      }
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @return The count of columnToGet.
       */
      public int getColumnToGetCount() {
        return columnToGet_.size();
      }
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @param index The index of the element to return.
       * @return The columnToGet at the given index.
       */
      public java.lang.String getColumnToGet(int index) {
        return columnToGet_.get(index);
      }
      /**
       * <code>repeated string column_to_get = 5;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnToGetBytes(int index) {
        return columnToGet_.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;
  
        if (!hasEnableStream()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, enableStream_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, streamId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt32(3, expirationTime_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeInt64(4, lastEnableTime_);
        }
        for (int i = 0; i < columnToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, columnToGet_.getRaw(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, enableStream_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, streamId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(3, expirationTime_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(4, lastEnableTime_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnToGetList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails) obj;
  
        if (hasEnableStream() != other.hasEnableStream()) return false;
        if (hasEnableStream()) {
          if (getEnableStream()
              != other.getEnableStream()) return false;
        }
        if (hasStreamId() != other.hasStreamId()) return false;
        if (hasStreamId()) {
          if (!getStreamId()
              .equals(other.getStreamId())) return false;
        }
        if (hasExpirationTime() != other.hasExpirationTime()) return false;
        if (hasExpirationTime()) {
          if (getExpirationTime()
              != other.getExpirationTime()) return false;
        }
        if (hasLastEnableTime() != other.hasLastEnableTime()) return false;
        if (hasLastEnableTime()) {
          if (getLastEnableTime()
              != other.getLastEnableTime()) return false;
        }
        if (!getColumnToGetList()
            .equals(other.getColumnToGetList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasEnableStream()) {
          hash = (37 * hash) + ENABLE_STREAM_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getEnableStream());
        }
        if (hasStreamId()) {
          hash = (37 * hash) + STREAM_ID_FIELD_NUMBER;
          hash = (53 * hash) + getStreamId().hashCode();
        }
        if (hasExpirationTime()) {
          hash = (37 * hash) + EXPIRATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + getExpirationTime();
        }
        if (hasLastEnableTime()) {
          hash = (37 * hash) + LAST_ENABLE_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getLastEnableTime());
        }
        if (getColumnToGetCount() > 0) {
          hash = (37 * hash) + COLUMN_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnToGetList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamDetails}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.StreamDetails)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          enableStream_ = false;
          streamId_ = "";
          expirationTime_ = 0;
          lastEnableTime_ = 0L;
          columnToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.enableStream_ = enableStream_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.streamId_ = streamId_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.expirationTime_ = expirationTime_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.lastEnableTime_ = lastEnableTime_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            columnToGet_.makeImmutable();
            result.columnToGet_ = columnToGet_;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance()) return this;
          if (other.hasEnableStream()) {
            setEnableStream(other.getEnableStream());
          }
          if (other.hasStreamId()) {
            streamId_ = other.streamId_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasExpirationTime()) {
            setExpirationTime(other.getExpirationTime());
          }
          if (other.hasLastEnableTime()) {
            setLastEnableTime(other.getLastEnableTime());
          }
          if (!other.columnToGet_.isEmpty()) {
            if (columnToGet_.isEmpty()) {
              columnToGet_ = other.columnToGet_;
              bitField0_ |= 0x00000010;
            } else {
              ensureColumnToGetIsMutable();
              columnToGet_.addAll(other.columnToGet_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasEnableStream()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  enableStream_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 18: {
                  streamId_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  expirationTime_ = input.readInt32();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                case 32: {
                  lastEnableTime_ = input.readInt64();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 32
                case 42: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnToGetIsMutable();
                  columnToGet_.add(bs);
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean enableStream_ ;
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return Whether the enableStream field is set.
         */
        @java.lang.Override
        public boolean hasEnableStream() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return The enableStream.
         */
        @java.lang.Override
        public boolean getEnableStream() {
          return enableStream_;
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @param value The enableStream to set.
         * @return This builder for chaining.
         */
        public Builder setEnableStream(boolean value) {
  
          enableStream_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool enable_stream = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnableStream() {
          bitField0_ = (bitField0_ & ~0x00000001);
          enableStream_ = false;
          onChanged();
          return this;
        }
  
        private java.lang.Object streamId_ = "";
        /**
         * <code>optional string stream_id = 2;</code>
         * @return Whether the streamId field is set.
         */
        public boolean hasStreamId() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string stream_id = 2;</code>
         * @return The streamId.
         */
        public java.lang.String getStreamId() {
          java.lang.Object ref = streamId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              streamId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string stream_id = 2;</code>
         * @return The bytes for streamId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStreamIdBytes() {
          java.lang.Object ref = streamId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            streamId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string stream_id = 2;</code>
         * @param value The streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string stream_id = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamId() {
          streamId_ = getDefaultInstance().getStreamId();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string stream_id = 2;</code>
         * @param value The bytes for streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private int expirationTime_ ;
        /**
         * <code>optional int32 expiration_time = 3;</code>
         * @return Whether the expirationTime field is set.
         */
        @java.lang.Override
        public boolean hasExpirationTime() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int32 expiration_time = 3;</code>
         * @return The expirationTime.
         */
        @java.lang.Override
        public int getExpirationTime() {
          return expirationTime_;
        }
        /**
         * <code>optional int32 expiration_time = 3;</code>
         * @param value The expirationTime to set.
         * @return This builder for chaining.
         */
        public Builder setExpirationTime(int value) {
  
          expirationTime_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 expiration_time = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearExpirationTime() {
          bitField0_ = (bitField0_ & ~0x00000004);
          expirationTime_ = 0;
          onChanged();
          return this;
        }
  
        private long lastEnableTime_ ;
        /**
         * <code>optional int64 last_enable_time = 4;</code>
         * @return Whether the lastEnableTime field is set.
         */
        @java.lang.Override
        public boolean hasLastEnableTime() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional int64 last_enable_time = 4;</code>
         * @return The lastEnableTime.
         */
        @java.lang.Override
        public long getLastEnableTime() {
          return lastEnableTime_;
        }
        /**
         * <code>optional int64 last_enable_time = 4;</code>
         * @param value The lastEnableTime to set.
         * @return This builder for chaining.
         */
        public Builder setLastEnableTime(long value) {
  
          lastEnableTime_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 last_enable_time = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearLastEnableTime() {
          bitField0_ = (bitField0_ & ~0x00000008);
          lastEnableTime_ = 0L;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnToGetIsMutable() {
          if (!columnToGet_.isModifiable()) {
            columnToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnToGet_);
          }
          bitField0_ |= 0x00000010;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @return A list containing the columnToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnToGetList() {
          columnToGet_.makeImmutable();
          return columnToGet_;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @return The count of columnToGet.
         */
        public int getColumnToGetCount() {
          return columnToGet_.size();
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param index The index of the element to return.
         * @return The columnToGet at the given index.
         */
        public java.lang.String getColumnToGet(int index) {
          return columnToGet_.get(index);
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnToGetBytes(int index) {
          return columnToGet_.getByteString(index);
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param index The index to set the value at.
         * @param value The columnToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnToGetIsMutable();
          columnToGet_.set(index, value);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param value The columnToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnToGetIsMutable();
          columnToGet_.add(value);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param values The columnToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnToGet_);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnToGet() {
          columnToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000010);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string column_to_get = 5;</code>
         * @param value The bytes of the columnToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnToGetIsMutable();
          columnToGet_.add(value);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.StreamDetails)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.StreamDetails)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamDetails>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StreamDetails>() {
        @java.lang.Override
        public StreamDetails parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamDetails> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamDetails> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface SSESpecificationOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.SSESpecification)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool enable = 1;</code>
       * @return Whether the enable field is set.
       */
      boolean hasEnable();
      /**
       * <code>required bool enable = 1;</code>
       * @return The enable.
       */
      boolean getEnable();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return Whether the keyType field is set.
       */
      boolean hasKeyType();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return The keyType.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType();
  
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes key_id = 3;</code>
       * @return Whether the keyId field is set.
       */
      boolean hasKeyId();
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes key_id = 3;</code>
       * @return The keyId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId();
  
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return Whether the roleArn field is set.
       */
      boolean hasRoleArn();
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return The roleArn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SSESpecification}
     */
    public static final class SSESpecification extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.SSESpecification)
        SSESpecificationOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SSESpecification.class.getName());
      }
      // Use SSESpecification.newBuilder() to construct.
      private SSESpecification(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private SSESpecification() {
        keyType_ = 1;
        keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder.class);
      }
  
      private int bitField0_;
      public static final int ENABLE_FIELD_NUMBER = 1;
      private boolean enable_ = false;
      /**
       * <code>required bool enable = 1;</code>
       * @return Whether the enable field is set.
       */
      @java.lang.Override
      public boolean hasEnable() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool enable = 1;</code>
       * @return The enable.
       */
      @java.lang.Override
      public boolean getEnable() {
        return enable_;
      }
  
      public static final int KEY_TYPE_FIELD_NUMBER = 2;
      private int keyType_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return Whether the keyType field is set.
       */
      @java.lang.Override public boolean hasKeyType() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return The keyType.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(keyType_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.SSE_KMS_SERVICE : result;
      }
  
      public static final int KEY_ID_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes key_id = 3;</code>
       * @return Whether the keyId field is set.
       */
      @java.lang.Override
      public boolean hasKeyId() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes key_id = 3;</code>
       * @return The keyId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId() {
        return keyId_;
      }
  
      public static final int ROLE_ARN_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return Whether the roleArn field is set.
       */
      @java.lang.Override
      public boolean hasRoleArn() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return The roleArn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn() {
        return roleArn_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasEnable()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, enable_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, keyType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(3, keyId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(4, roleArn_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, enable_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, keyType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, keyId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, roleArn_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification) obj;
  
        if (hasEnable() != other.hasEnable()) return false;
        if (hasEnable()) {
          if (getEnable()
              != other.getEnable()) return false;
        }
        if (hasKeyType() != other.hasKeyType()) return false;
        if (hasKeyType()) {
          if (keyType_ != other.keyType_) return false;
        }
        if (hasKeyId() != other.hasKeyId()) return false;
        if (hasKeyId()) {
          if (!getKeyId()
              .equals(other.getKeyId())) return false;
        }
        if (hasRoleArn() != other.hasRoleArn()) return false;
        if (hasRoleArn()) {
          if (!getRoleArn()
              .equals(other.getRoleArn())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasEnable()) {
          hash = (37 * hash) + ENABLE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getEnable());
        }
        if (hasKeyType()) {
          hash = (37 * hash) + KEY_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + keyType_;
        }
        if (hasKeyId()) {
          hash = (37 * hash) + KEY_ID_FIELD_NUMBER;
          hash = (53 * hash) + getKeyId().hashCode();
        }
        if (hasRoleArn()) {
          hash = (37 * hash) + ROLE_ARN_FIELD_NUMBER;
          hash = (53 * hash) + getRoleArn().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SSESpecification}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.SSESpecification)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          enable_ = false;
          keyType_ = 1;
          keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.enable_ = enable_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.keyType_ = keyType_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.keyId_ = keyId_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.roleArn_ = roleArn_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance()) return this;
          if (other.hasEnable()) {
            setEnable(other.getEnable());
          }
          if (other.hasKeyType()) {
            setKeyType(other.getKeyType());
          }
          if (other.hasKeyId()) {
            setKeyId(other.getKeyId());
          }
          if (other.hasRoleArn()) {
            setRoleArn(other.getRoleArn());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasEnable()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  enable_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    keyType_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                case 26: {
                  keyId_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  roleArn_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean enable_ ;
        /**
         * <code>required bool enable = 1;</code>
         * @return Whether the enable field is set.
         */
        @java.lang.Override
        public boolean hasEnable() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool enable = 1;</code>
         * @return The enable.
         */
        @java.lang.Override
        public boolean getEnable() {
          return enable_;
        }
        /**
         * <code>required bool enable = 1;</code>
         * @param value The enable to set.
         * @return This builder for chaining.
         */
        public Builder setEnable(boolean value) {
  
          enable_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool enable = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnable() {
          bitField0_ = (bitField0_ & ~0x00000001);
          enable_ = false;
          onChanged();
          return this;
        }
  
        private int keyType_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return Whether the keyType field is set.
         */
        @java.lang.Override public boolean hasKeyType() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return The keyType.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(keyType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.SSE_KMS_SERVICE : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @param value The keyType to set.
         * @return This builder for chaining.
         */
        public Builder setKeyType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          keyType_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearKeyType() {
          bitField0_ = (bitField0_ & ~0x00000002);
          keyType_ = 1;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes key_id = 3;</code>
         * @return Whether the keyId field is set.
         */
        @java.lang.Override
        public boolean hasKeyId() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes key_id = 3;</code>
         * @return The keyId.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId() {
          return keyId_;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes key_id = 3;</code>
         * @param value The keyId to set.
         * @return This builder for chaining.
         */
        public Builder setKeyId(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          keyId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes key_id = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearKeyId() {
          bitField0_ = (bitField0_ & ~0x00000004);
          keyId_ = getDefaultInstance().getKeyId();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return Whether the roleArn field is set.
         */
        @java.lang.Override
        public boolean hasRoleArn() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return The roleArn.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn() {
          return roleArn_;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @param value The roleArn to set.
         * @return This builder for chaining.
         */
        public Builder setRoleArn(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          roleArn_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearRoleArn() {
          bitField0_ = (bitField0_ & ~0x00000008);
          roleArn_ = getDefaultInstance().getRoleArn();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.SSESpecification)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.SSESpecification)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSESpecification>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SSESpecification>() {
        @java.lang.Override
        public SSESpecification parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSESpecification> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSESpecification> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface SSEDetailsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.SSEDetails)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool enable = 1;</code>
       * @return Whether the enable field is set.
       */
      boolean hasEnable();
      /**
       * <code>required bool enable = 1;</code>
       * @return The enable.
       */
      boolean getEnable();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return Whether the keyType field is set.
       */
      boolean hasKeyType();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return The keyType.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType();
  
      /**
       * <code>optional bytes key_id = 3;</code>
       * @return Whether the keyId field is set.
       */
      boolean hasKeyId();
      /**
       * <code>optional bytes key_id = 3;</code>
       * @return The keyId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId();
  
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return Whether the roleArn field is set.
       */
      boolean hasRoleArn();
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return The roleArn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SSEDetails}
     */
    public static final class SSEDetails extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.SSEDetails)
        SSEDetailsOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SSEDetails.class.getName());
      }
      // Use SSEDetails.newBuilder() to construct.
      private SSEDetails(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private SSEDetails() {
        keyType_ = 1;
        keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder.class);
      }
  
      private int bitField0_;
      public static final int ENABLE_FIELD_NUMBER = 1;
      private boolean enable_ = false;
      /**
       * <code>required bool enable = 1;</code>
       * @return Whether the enable field is set.
       */
      @java.lang.Override
      public boolean hasEnable() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool enable = 1;</code>
       * @return The enable.
       */
      @java.lang.Override
      public boolean getEnable() {
        return enable_;
      }
  
      public static final int KEY_TYPE_FIELD_NUMBER = 2;
      private int keyType_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return Whether the keyType field is set.
       */
      @java.lang.Override public boolean hasKeyType() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
       * @return The keyType.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(keyType_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.SSE_KMS_SERVICE : result;
      }
  
      public static final int KEY_ID_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes key_id = 3;</code>
       * @return Whether the keyId field is set.
       */
      @java.lang.Override
      public boolean hasKeyId() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes key_id = 3;</code>
       * @return The keyId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId() {
        return keyId_;
      }
  
      public static final int ROLE_ARN_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return Whether the roleArn field is set.
       */
      @java.lang.Override
      public boolean hasRoleArn() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <pre>
       * only useful when key_type is SSE_BYOK
       * </pre>
       *
       * <code>optional bytes role_arn = 4;</code>
       * @return The roleArn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn() {
        return roleArn_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasEnable()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, enable_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, keyType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(3, keyId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(4, roleArn_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, enable_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, keyType_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, keyId_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, roleArn_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails) obj;
  
        if (hasEnable() != other.hasEnable()) return false;
        if (hasEnable()) {
          if (getEnable()
              != other.getEnable()) return false;
        }
        if (hasKeyType() != other.hasKeyType()) return false;
        if (hasKeyType()) {
          if (keyType_ != other.keyType_) return false;
        }
        if (hasKeyId() != other.hasKeyId()) return false;
        if (hasKeyId()) {
          if (!getKeyId()
              .equals(other.getKeyId())) return false;
        }
        if (hasRoleArn() != other.hasRoleArn()) return false;
        if (hasRoleArn()) {
          if (!getRoleArn()
              .equals(other.getRoleArn())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasEnable()) {
          hash = (37 * hash) + ENABLE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getEnable());
        }
        if (hasKeyType()) {
          hash = (37 * hash) + KEY_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + keyType_;
        }
        if (hasKeyId()) {
          hash = (37 * hash) + KEY_ID_FIELD_NUMBER;
          hash = (53 * hash) + getKeyId().hashCode();
        }
        if (hasRoleArn()) {
          hash = (37 * hash) + ROLE_ARN_FIELD_NUMBER;
          hash = (53 * hash) + getRoleArn().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SSEDetails}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.SSEDetails)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          enable_ = false;
          keyType_ = 1;
          keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.enable_ = enable_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.keyType_ = keyType_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.keyId_ = keyId_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.roleArn_ = roleArn_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance()) return this;
          if (other.hasEnable()) {
            setEnable(other.getEnable());
          }
          if (other.hasKeyType()) {
            setKeyType(other.getKeyType());
          }
          if (other.hasKeyId()) {
            setKeyId(other.getKeyId());
          }
          if (other.hasRoleArn()) {
            setRoleArn(other.getRoleArn());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasEnable()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  enable_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    keyType_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                case 26: {
                  keyId_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  roleArn_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean enable_ ;
        /**
         * <code>required bool enable = 1;</code>
         * @return Whether the enable field is set.
         */
        @java.lang.Override
        public boolean hasEnable() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool enable = 1;</code>
         * @return The enable.
         */
        @java.lang.Override
        public boolean getEnable() {
          return enable_;
        }
        /**
         * <code>required bool enable = 1;</code>
         * @param value The enable to set.
         * @return This builder for chaining.
         */
        public Builder setEnable(boolean value) {
  
          enable_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool enable = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnable() {
          bitField0_ = (bitField0_ & ~0x00000001);
          enable_ = false;
          onChanged();
          return this;
        }
  
        private int keyType_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return Whether the keyType field is set.
         */
        @java.lang.Override public boolean hasKeyType() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return The keyType.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType getKeyType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.forNumber(keyType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType.SSE_KMS_SERVICE : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @param value The keyType to set.
         * @return This builder for chaining.
         */
        public Builder setKeyType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEKeyType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          keyType_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEKeyType key_type = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearKeyType() {
          bitField0_ = (bitField0_ & ~0x00000002);
          keyType_ = 1;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString keyId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes key_id = 3;</code>
         * @return Whether the keyId field is set.
         */
        @java.lang.Override
        public boolean hasKeyId() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bytes key_id = 3;</code>
         * @return The keyId.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKeyId() {
          return keyId_;
        }
        /**
         * <code>optional bytes key_id = 3;</code>
         * @param value The keyId to set.
         * @return This builder for chaining.
         */
        public Builder setKeyId(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          keyId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes key_id = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearKeyId() {
          bitField0_ = (bitField0_ & ~0x00000004);
          keyId_ = getDefaultInstance().getKeyId();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString roleArn_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return Whether the roleArn field is set.
         */
        @java.lang.Override
        public boolean hasRoleArn() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return The roleArn.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRoleArn() {
          return roleArn_;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @param value The roleArn to set.
         * @return This builder for chaining.
         */
        public Builder setRoleArn(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          roleArn_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * only useful when key_type is SSE_BYOK
         * </pre>
         *
         * <code>optional bytes role_arn = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearRoleArn() {
          bitField0_ = (bitField0_ & ~0x00000008);
          roleArn_ = getDefaultInstance().getRoleArn();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.SSEDetails)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.SSEDetails)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSEDetails>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SSEDetails>() {
        @java.lang.Override
        public SSEDetails parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSEDetails> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SSEDetails> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CreateTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return Whether the tableMeta field is set.
       */
      boolean hasTableMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return The tableMeta.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return Whether the reservedThroughput field is set.
       */
      boolean hasReservedThroughput();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return The reservedThroughput.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      boolean hasTableOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> 
          getPartitionsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getPartitions(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      int getPartitionsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder> 
          getPartitionsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder getPartitionsOrBuilder(
          int index);
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       * @return Whether the streamSpec field is set.
       */
      boolean hasStreamSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       * @return The streamSpec.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       * @return Whether the sseSpec field is set.
       */
      boolean hasSseSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       * @return The sseSpec.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getSseSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder getSseSpecOrBuilder();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> 
          getIndexMetasList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      int getIndexMetasCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
          getIndexMetasOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
          int index);
  
      /**
       * <code>optional bool enable_local_txn = 8;</code>
       * @return Whether the enableLocalTxn field is set.
       */
      boolean hasEnableLocalTxn();
      /**
       * <code>optional bool enable_local_txn = 8;</code>
       * @return The enableLocalTxn.
       */
      boolean getEnableLocalTxn();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest}
     */
    public static final class CreateTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest)
        CreateTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CreateTableRequest.class.getName());
      }
      // Use CreateTableRequest.newBuilder() to construct.
      private CreateTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CreateTableRequest() {
        partitions_ = java.util.Collections.emptyList();
        indexMetas_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_META_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta tableMeta_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return Whether the tableMeta field is set.
       */
      @java.lang.Override
      public boolean hasTableMeta() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return The tableMeta.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta() {
        return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder() {
        return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
      }
  
      public static final int RESERVED_THROUGHPUT_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return Whether the reservedThroughput field is set.
       */
      @java.lang.Override
      public boolean hasReservedThroughput() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return The reservedThroughput.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
  
      public static final int TABLE_OPTIONS_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      @java.lang.Override
      public boolean hasTableOptions() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
  
      public static final int PARTITIONS_FIELD_NUMBER = 4;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> partitions_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> getPartitionsList() {
        return partitions_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder> 
          getPartitionsOrBuilderList() {
        return partitions_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      @java.lang.Override
      public int getPartitionsCount() {
        return partitions_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getPartitions(int index) {
        return partitions_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder getPartitionsOrBuilder(
          int index) {
        return partitions_.get(index);
      }
  
      public static final int STREAM_SPEC_FIELD_NUMBER = 5;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification streamSpec_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       * @return Whether the streamSpec field is set.
       */
      @java.lang.Override
      public boolean hasStreamSpec() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       * @return The streamSpec.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec() {
        return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder() {
        return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
      }
  
      public static final int SSE_SPEC_FIELD_NUMBER = 6;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification sseSpec_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       * @return Whether the sseSpec field is set.
       */
      @java.lang.Override
      public boolean hasSseSpec() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       * @return The sseSpec.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getSseSpec() {
        return sseSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance() : sseSpec_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder getSseSpecOrBuilder() {
        return sseSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance() : sseSpec_;
      }
  
      public static final int INDEX_METAS_FIELD_NUMBER = 7;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> indexMetas_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> getIndexMetasList() {
        return indexMetas_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
          getIndexMetasOrBuilderList() {
        return indexMetas_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      @java.lang.Override
      public int getIndexMetasCount() {
        return indexMetas_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index) {
        return indexMetas_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
          int index) {
        return indexMetas_.get(index);
      }
  
      public static final int ENABLE_LOCAL_TXN_FIELD_NUMBER = 8;
      private boolean enableLocalTxn_ = false;
      /**
       * <code>optional bool enable_local_txn = 8;</code>
       * @return Whether the enableLocalTxn field is set.
       */
      @java.lang.Override
      public boolean hasEnableLocalTxn() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional bool enable_local_txn = 8;</code>
       * @return The enableLocalTxn.
       */
      @java.lang.Override
      public boolean getEnableLocalTxn() {
        return enableLocalTxn_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasTableMeta()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasReservedThroughput()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getTableMeta().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getReservedThroughput().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getPartitionsCount(); i++) {
          if (!getPartitions(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasStreamSpec()) {
          if (!getStreamSpec().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasSseSpec()) {
          if (!getSseSpec().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        for (int i = 0; i < getIndexMetasCount(); i++) {
          if (!getIndexMetas(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getTableMeta());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getReservedThroughput());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getTableOptions());
        }
        for (int i = 0; i < partitions_.size(); i++) {
          output.writeMessage(4, partitions_.get(i));
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(5, getStreamSpec());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeMessage(6, getSseSpec());
        }
        for (int i = 0; i < indexMetas_.size(); i++) {
          output.writeMessage(7, indexMetas_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          output.writeBool(8, enableLocalTxn_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getTableMeta());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getReservedThroughput());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getTableOptions());
        }
        for (int i = 0; i < partitions_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, partitions_.get(i));
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(5, getStreamSpec());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(6, getSseSpec());
        }
        for (int i = 0; i < indexMetas_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(7, indexMetas_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(8, enableLocalTxn_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest) obj;
  
        if (hasTableMeta() != other.hasTableMeta()) return false;
        if (hasTableMeta()) {
          if (!getTableMeta()
              .equals(other.getTableMeta())) return false;
        }
        if (hasReservedThroughput() != other.hasReservedThroughput()) return false;
        if (hasReservedThroughput()) {
          if (!getReservedThroughput()
              .equals(other.getReservedThroughput())) return false;
        }
        if (hasTableOptions() != other.hasTableOptions()) return false;
        if (hasTableOptions()) {
          if (!getTableOptions()
              .equals(other.getTableOptions())) return false;
        }
        if (!getPartitionsList()
            .equals(other.getPartitionsList())) return false;
        if (hasStreamSpec() != other.hasStreamSpec()) return false;
        if (hasStreamSpec()) {
          if (!getStreamSpec()
              .equals(other.getStreamSpec())) return false;
        }
        if (hasSseSpec() != other.hasSseSpec()) return false;
        if (hasSseSpec()) {
          if (!getSseSpec()
              .equals(other.getSseSpec())) return false;
        }
        if (!getIndexMetasList()
            .equals(other.getIndexMetasList())) return false;
        if (hasEnableLocalTxn() != other.hasEnableLocalTxn()) return false;
        if (hasEnableLocalTxn()) {
          if (getEnableLocalTxn()
              != other.getEnableLocalTxn()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableMeta()) {
          hash = (37 * hash) + TABLE_META_FIELD_NUMBER;
          hash = (53 * hash) + getTableMeta().hashCode();
        }
        if (hasReservedThroughput()) {
          hash = (37 * hash) + RESERVED_THROUGHPUT_FIELD_NUMBER;
          hash = (53 * hash) + getReservedThroughput().hashCode();
        }
        if (hasTableOptions()) {
          hash = (37 * hash) + TABLE_OPTIONS_FIELD_NUMBER;
          hash = (53 * hash) + getTableOptions().hashCode();
        }
        if (getPartitionsCount() > 0) {
          hash = (37 * hash) + PARTITIONS_FIELD_NUMBER;
          hash = (53 * hash) + getPartitionsList().hashCode();
        }
        if (hasStreamSpec()) {
          hash = (37 * hash) + STREAM_SPEC_FIELD_NUMBER;
          hash = (53 * hash) + getStreamSpec().hashCode();
        }
        if (hasSseSpec()) {
          hash = (37 * hash) + SSE_SPEC_FIELD_NUMBER;
          hash = (53 * hash) + getSseSpec().hashCode();
        }
        if (getIndexMetasCount() > 0) {
          hash = (37 * hash) + INDEX_METAS_FIELD_NUMBER;
          hash = (53 * hash) + getIndexMetasList().hashCode();
        }
        if (hasEnableLocalTxn()) {
          hash = (37 * hash) + ENABLE_LOCAL_TXN_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getEnableLocalTxn());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getTableMetaFieldBuilder();
            getReservedThroughputFieldBuilder();
            getTableOptionsFieldBuilder();
            getPartitionsFieldBuilder();
            getStreamSpecFieldBuilder();
            getSseSpecFieldBuilder();
            getIndexMetasFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableMeta_ = null;
          if (tableMetaBuilder_ != null) {
            tableMetaBuilder_.dispose();
            tableMetaBuilder_ = null;
          }
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          if (partitionsBuilder_ == null) {
            partitions_ = java.util.Collections.emptyList();
          } else {
            partitions_ = null;
            partitionsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000008);
          streamSpec_ = null;
          if (streamSpecBuilder_ != null) {
            streamSpecBuilder_.dispose();
            streamSpecBuilder_ = null;
          }
          sseSpec_ = null;
          if (sseSpecBuilder_ != null) {
            sseSpecBuilder_.dispose();
            sseSpecBuilder_ = null;
          }
          if (indexMetasBuilder_ == null) {
            indexMetas_ = java.util.Collections.emptyList();
          } else {
            indexMetas_ = null;
            indexMetasBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000040);
          enableLocalTxn_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest result) {
          if (partitionsBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0)) {
              partitions_ = java.util.Collections.unmodifiableList(partitions_);
              bitField0_ = (bitField0_ & ~0x00000008);
            }
            result.partitions_ = partitions_;
          } else {
            result.partitions_ = partitionsBuilder_.build();
          }
          if (indexMetasBuilder_ == null) {
            if (((bitField0_ & 0x00000040) != 0)) {
              indexMetas_ = java.util.Collections.unmodifiableList(indexMetas_);
              bitField0_ = (bitField0_ & ~0x00000040);
            }
            result.indexMetas_ = indexMetas_;
          } else {
            result.indexMetas_ = indexMetasBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableMeta_ = tableMetaBuilder_ == null
                ? tableMeta_
                : tableMetaBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.reservedThroughput_ = reservedThroughputBuilder_ == null
                ? reservedThroughput_
                : reservedThroughputBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.tableOptions_ = tableOptionsBuilder_ == null
                ? tableOptions_
                : tableOptionsBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.streamSpec_ = streamSpecBuilder_ == null
                ? streamSpec_
                : streamSpecBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.sseSpec_ = sseSpecBuilder_ == null
                ? sseSpec_
                : sseSpecBuilder_.build();
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.enableLocalTxn_ = enableLocalTxn_;
            to_bitField0_ |= 0x00000020;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest.getDefaultInstance()) return this;
          if (other.hasTableMeta()) {
            mergeTableMeta(other.getTableMeta());
          }
          if (other.hasReservedThroughput()) {
            mergeReservedThroughput(other.getReservedThroughput());
          }
          if (other.hasTableOptions()) {
            mergeTableOptions(other.getTableOptions());
          }
          if (partitionsBuilder_ == null) {
            if (!other.partitions_.isEmpty()) {
              if (partitions_.isEmpty()) {
                partitions_ = other.partitions_;
                bitField0_ = (bitField0_ & ~0x00000008);
              } else {
                ensurePartitionsIsMutable();
                partitions_.addAll(other.partitions_);
              }
              onChanged();
            }
          } else {
            if (!other.partitions_.isEmpty()) {
              if (partitionsBuilder_.isEmpty()) {
                partitionsBuilder_.dispose();
                partitionsBuilder_ = null;
                partitions_ = other.partitions_;
                bitField0_ = (bitField0_ & ~0x00000008);
                partitionsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getPartitionsFieldBuilder() : null;
              } else {
                partitionsBuilder_.addAllMessages(other.partitions_);
              }
            }
          }
          if (other.hasStreamSpec()) {
            mergeStreamSpec(other.getStreamSpec());
          }
          if (other.hasSseSpec()) {
            mergeSseSpec(other.getSseSpec());
          }
          if (indexMetasBuilder_ == null) {
            if (!other.indexMetas_.isEmpty()) {
              if (indexMetas_.isEmpty()) {
                indexMetas_ = other.indexMetas_;
                bitField0_ = (bitField0_ & ~0x00000040);
              } else {
                ensureIndexMetasIsMutable();
                indexMetas_.addAll(other.indexMetas_);
              }
              onChanged();
            }
          } else {
            if (!other.indexMetas_.isEmpty()) {
              if (indexMetasBuilder_.isEmpty()) {
                indexMetasBuilder_.dispose();
                indexMetasBuilder_ = null;
                indexMetas_ = other.indexMetas_;
                bitField0_ = (bitField0_ & ~0x00000040);
                indexMetasBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getIndexMetasFieldBuilder() : null;
              } else {
                indexMetasBuilder_.addAllMessages(other.indexMetas_);
              }
            }
          }
          if (other.hasEnableLocalTxn()) {
            setEnableLocalTxn(other.getEnableLocalTxn());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableMeta()) {
            return false;
          }
          if (!hasReservedThroughput()) {
            return false;
          }
          if (!getTableMeta().isInitialized()) {
            return false;
          }
          if (!getReservedThroughput().isInitialized()) {
            return false;
          }
          for (int i = 0; i < getPartitionsCount(); i++) {
            if (!getPartitions(i).isInitialized()) {
              return false;
            }
          }
          if (hasStreamSpec()) {
            if (!getStreamSpec().isInitialized()) {
              return false;
            }
          }
          if (hasSseSpec()) {
            if (!getSseSpec().isInitialized()) {
              return false;
            }
          }
          for (int i = 0; i < getIndexMetasCount(); i++) {
            if (!getIndexMetas(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getTableMetaFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getReservedThroughputFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getTableOptionsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.parser(),
                          extensionRegistry);
                  if (partitionsBuilder_ == null) {
                    ensurePartitionsIsMutable();
                    partitions_.add(m);
                  } else {
                    partitionsBuilder_.addMessage(m);
                  }
                  break;
                } // case 34
                case 42: {
                  input.readMessage(
                      getStreamSpecFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                case 50: {
                  input.readMessage(
                      getSseSpecFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000020;
                  break;
                } // case 50
                case 58: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.parser(),
                          extensionRegistry);
                  if (indexMetasBuilder_ == null) {
                    ensureIndexMetasIsMutable();
                    indexMetas_.add(m);
                  } else {
                    indexMetasBuilder_.addMessage(m);
                  }
                  break;
                } // case 58
                case 64: {
                  enableLocalTxn_ = input.readBool();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 64
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta tableMeta_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder> tableMetaBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         * @return Whether the tableMeta field is set.
         */
        public boolean hasTableMeta() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         * @return The tableMeta.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta() {
          if (tableMetaBuilder_ == null) {
            return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
          } else {
            return tableMetaBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder setTableMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta value) {
          if (tableMetaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableMeta_ = value;
          } else {
            tableMetaBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder setTableMeta(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder builderForValue) {
          if (tableMetaBuilder_ == null) {
            tableMeta_ = builderForValue.build();
          } else {
            tableMetaBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder mergeTableMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta value) {
          if (tableMetaBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              tableMeta_ != null &&
              tableMeta_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance()) {
              getTableMetaBuilder().mergeFrom(value);
            } else {
              tableMeta_ = value;
            }
          } else {
            tableMetaBuilder_.mergeFrom(value);
          }
          if (tableMeta_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder clearTableMeta() {
          bitField0_ = (bitField0_ & ~0x00000001);
          tableMeta_ = null;
          if (tableMetaBuilder_ != null) {
            tableMetaBuilder_.dispose();
            tableMetaBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder getTableMetaBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getTableMetaFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder() {
          if (tableMetaBuilder_ != null) {
            return tableMetaBuilder_.getMessageOrBuilder();
          } else {
            return tableMeta_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder> 
            getTableMetaFieldBuilder() {
          if (tableMetaBuilder_ == null) {
            tableMetaBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder>(
                    getTableMeta(),
                    getParentForChildren(),
                    isClean());
            tableMeta_ = null;
          }
          return tableMetaBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> reservedThroughputBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         * @return Whether the reservedThroughput field is set.
         */
        public boolean hasReservedThroughput() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         * @return The reservedThroughput.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
          if (reservedThroughputBuilder_ == null) {
            return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          } else {
            return reservedThroughputBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder setReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            reservedThroughput_ = value;
          } else {
            reservedThroughputBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder setReservedThroughput(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder builderForValue) {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughput_ = builderForValue.build();
          } else {
            reservedThroughputBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder mergeReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              reservedThroughput_ != null &&
              reservedThroughput_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance()) {
              getReservedThroughputBuilder().mergeFrom(value);
            } else {
              reservedThroughput_ = value;
            }
          } else {
            reservedThroughputBuilder_.mergeFrom(value);
          }
          if (reservedThroughput_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder clearReservedThroughput() {
          bitField0_ = (bitField0_ & ~0x00000002);
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder getReservedThroughputBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getReservedThroughputFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
          if (reservedThroughputBuilder_ != null) {
            return reservedThroughputBuilder_.getMessageOrBuilder();
          } else {
            return reservedThroughput_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> 
            getReservedThroughputFieldBuilder() {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughputBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder>(
                    getReservedThroughput(),
                    getParentForChildren(),
                    isClean());
            reservedThroughput_ = null;
          }
          return reservedThroughputBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> tableOptionsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return Whether the tableOptions field is set.
         */
        public boolean hasTableOptions() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return The tableOptions.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
          if (tableOptionsBuilder_ == null) {
            return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          } else {
            return tableOptionsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableOptions_ = value;
          } else {
            tableOptionsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder builderForValue) {
          if (tableOptionsBuilder_ == null) {
            tableOptions_ = builderForValue.build();
          } else {
            tableOptionsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder mergeTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              tableOptions_ != null &&
              tableOptions_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance()) {
              getTableOptionsBuilder().mergeFrom(value);
            } else {
              tableOptions_ = value;
            }
          } else {
            tableOptionsBuilder_.mergeFrom(value);
          }
          if (tableOptions_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder clearTableOptions() {
          bitField0_ = (bitField0_ & ~0x00000004);
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder getTableOptionsBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getTableOptionsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
          if (tableOptionsBuilder_ != null) {
            return tableOptionsBuilder_.getMessageOrBuilder();
          } else {
            return tableOptions_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> 
            getTableOptionsFieldBuilder() {
          if (tableOptionsBuilder_ == null) {
            tableOptionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder>(
                    getTableOptions(),
                    getParentForChildren(),
                    isClean());
            tableOptions_ = null;
          }
          return tableOptionsBuilder_;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> partitions_ =
          java.util.Collections.emptyList();
        private void ensurePartitionsIsMutable() {
          if (!((bitField0_ & 0x00000008) != 0)) {
            partitions_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange>(partitions_);
            bitField0_ |= 0x00000008;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder> partitionsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> getPartitionsList() {
          if (partitionsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(partitions_);
          } else {
            return partitionsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public int getPartitionsCount() {
          if (partitionsBuilder_ == null) {
            return partitions_.size();
          } else {
            return partitionsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange getPartitions(int index) {
          if (partitionsBuilder_ == null) {
            return partitions_.get(index);
          } else {
            return partitionsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder setPartitions(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange value) {
          if (partitionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePartitionsIsMutable();
            partitions_.set(index, value);
            onChanged();
          } else {
            partitionsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder setPartitions(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder builderForValue) {
          if (partitionsBuilder_ == null) {
            ensurePartitionsIsMutable();
            partitions_.set(index, builderForValue.build());
            onChanged();
          } else {
            partitionsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder addPartitions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange value) {
          if (partitionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePartitionsIsMutable();
            partitions_.add(value);
            onChanged();
          } else {
            partitionsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder addPartitions(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange value) {
          if (partitionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePartitionsIsMutable();
            partitions_.add(index, value);
            onChanged();
          } else {
            partitionsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder addPartitions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder builderForValue) {
          if (partitionsBuilder_ == null) {
            ensurePartitionsIsMutable();
            partitions_.add(builderForValue.build());
            onChanged();
          } else {
            partitionsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder addPartitions(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder builderForValue) {
          if (partitionsBuilder_ == null) {
            ensurePartitionsIsMutable();
            partitions_.add(index, builderForValue.build());
            onChanged();
          } else {
            partitionsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder addAllPartitions(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange> values) {
          if (partitionsBuilder_ == null) {
            ensurePartitionsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, partitions_);
            onChanged();
          } else {
            partitionsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder clearPartitions() {
          if (partitionsBuilder_ == null) {
            partitions_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000008);
            onChanged();
          } else {
            partitionsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public Builder removePartitions(int index) {
          if (partitionsBuilder_ == null) {
            ensurePartitionsIsMutable();
            partitions_.remove(index);
            onChanged();
          } else {
            partitionsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder getPartitionsBuilder(
            int index) {
          return getPartitionsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder getPartitionsOrBuilder(
            int index) {
          if (partitionsBuilder_ == null) {
            return partitions_.get(index);  } else {
            return partitionsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder> 
             getPartitionsOrBuilderList() {
          if (partitionsBuilder_ != null) {
            return partitionsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(partitions_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder addPartitionsBuilder() {
          return getPartitionsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder addPartitionsBuilder(
            int index) {
          return getPartitionsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PartitionRange partitions = 4;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder> 
             getPartitionsBuilderList() {
          return getPartitionsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder> 
            getPartitionsFieldBuilder() {
          if (partitionsBuilder_ == null) {
            partitionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PartitionRangeOrBuilder>(
                    partitions_,
                    ((bitField0_ & 0x00000008) != 0),
                    getParentForChildren(),
                    isClean());
            partitions_ = null;
          }
          return partitionsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification streamSpec_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder> streamSpecBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         * @return Whether the streamSpec field is set.
         */
        public boolean hasStreamSpec() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         * @return The streamSpec.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec() {
          if (streamSpecBuilder_ == null) {
            return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
          } else {
            return streamSpecBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public Builder setStreamSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification value) {
          if (streamSpecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            streamSpec_ = value;
          } else {
            streamSpecBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public Builder setStreamSpec(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder builderForValue) {
          if (streamSpecBuilder_ == null) {
            streamSpec_ = builderForValue.build();
          } else {
            streamSpecBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public Builder mergeStreamSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification value) {
          if (streamSpecBuilder_ == null) {
            if (((bitField0_ & 0x00000010) != 0) &&
              streamSpec_ != null &&
              streamSpec_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance()) {
              getStreamSpecBuilder().mergeFrom(value);
            } else {
              streamSpec_ = value;
            }
          } else {
            streamSpecBuilder_.mergeFrom(value);
          }
          if (streamSpec_ != null) {
            bitField0_ |= 0x00000010;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public Builder clearStreamSpec() {
          bitField0_ = (bitField0_ & ~0x00000010);
          streamSpec_ = null;
          if (streamSpecBuilder_ != null) {
            streamSpecBuilder_.dispose();
            streamSpecBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder getStreamSpecBuilder() {
          bitField0_ |= 0x00000010;
          onChanged();
          return getStreamSpecFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder() {
          if (streamSpecBuilder_ != null) {
            return streamSpecBuilder_.getMessageOrBuilder();
          } else {
            return streamSpec_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 5;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder> 
            getStreamSpecFieldBuilder() {
          if (streamSpecBuilder_ == null) {
            streamSpecBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder>(
                    getStreamSpec(),
                    getParentForChildren(),
                    isClean());
            streamSpec_ = null;
          }
          return streamSpecBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification sseSpec_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder> sseSpecBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         * @return Whether the sseSpec field is set.
         */
        public boolean hasSseSpec() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         * @return The sseSpec.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification getSseSpec() {
          if (sseSpecBuilder_ == null) {
            return sseSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance() : sseSpec_;
          } else {
            return sseSpecBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public Builder setSseSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification value) {
          if (sseSpecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            sseSpec_ = value;
          } else {
            sseSpecBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public Builder setSseSpec(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder builderForValue) {
          if (sseSpecBuilder_ == null) {
            sseSpec_ = builderForValue.build();
          } else {
            sseSpecBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public Builder mergeSseSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification value) {
          if (sseSpecBuilder_ == null) {
            if (((bitField0_ & 0x00000020) != 0) &&
              sseSpec_ != null &&
              sseSpec_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance()) {
              getSseSpecBuilder().mergeFrom(value);
            } else {
              sseSpec_ = value;
            }
          } else {
            sseSpecBuilder_.mergeFrom(value);
          }
          if (sseSpec_ != null) {
            bitField0_ |= 0x00000020;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public Builder clearSseSpec() {
          bitField0_ = (bitField0_ & ~0x00000020);
          sseSpec_ = null;
          if (sseSpecBuilder_ != null) {
            sseSpecBuilder_.dispose();
            sseSpecBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder getSseSpecBuilder() {
          bitField0_ |= 0x00000020;
          onChanged();
          return getSseSpecFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder getSseSpecOrBuilder() {
          if (sseSpecBuilder_ != null) {
            return sseSpecBuilder_.getMessageOrBuilder();
          } else {
            return sseSpec_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.getDefaultInstance() : sseSpec_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSESpecification sse_spec = 6;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder> 
            getSseSpecFieldBuilder() {
          if (sseSpecBuilder_ == null) {
            sseSpecBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSESpecificationOrBuilder>(
                    getSseSpec(),
                    getParentForChildren(),
                    isClean());
            sseSpec_ = null;
          }
          return sseSpecBuilder_;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> indexMetas_ =
          java.util.Collections.emptyList();
        private void ensureIndexMetasIsMutable() {
          if (!((bitField0_ & 0x00000040) != 0)) {
            indexMetas_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta>(indexMetas_);
            bitField0_ |= 0x00000040;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> indexMetasBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> getIndexMetasList() {
          if (indexMetasBuilder_ == null) {
            return java.util.Collections.unmodifiableList(indexMetas_);
          } else {
            return indexMetasBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public int getIndexMetasCount() {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.size();
          } else {
            return indexMetasBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index) {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.get(index);
          } else {
            return indexMetasBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder setIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.set(index, value);
            onChanged();
          } else {
            indexMetasBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder setIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.set(index, builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder addIndexMetas(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.add(value);
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder addIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.add(index, value);
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder addIndexMetas(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.add(builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder addIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.add(index, builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder addAllIndexMetas(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> values) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, indexMetas_);
            onChanged();
          } else {
            indexMetasBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder clearIndexMetas() {
          if (indexMetasBuilder_ == null) {
            indexMetas_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000040);
            onChanged();
          } else {
            indexMetasBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public Builder removeIndexMetas(int index) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.remove(index);
            onChanged();
          } else {
            indexMetasBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder getIndexMetasBuilder(
            int index) {
          return getIndexMetasFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
            int index) {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.get(index);  } else {
            return indexMetasBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
             getIndexMetasOrBuilderList() {
          if (indexMetasBuilder_ != null) {
            return indexMetasBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(indexMetas_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder addIndexMetasBuilder() {
          return getIndexMetasFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder addIndexMetasBuilder(
            int index) {
          return getIndexMetasFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 7;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder> 
             getIndexMetasBuilderList() {
          return getIndexMetasFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
            getIndexMetasFieldBuilder() {
          if (indexMetasBuilder_ == null) {
            indexMetasBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder>(
                    indexMetas_,
                    ((bitField0_ & 0x00000040) != 0),
                    getParentForChildren(),
                    isClean());
            indexMetas_ = null;
          }
          return indexMetasBuilder_;
        }
  
        private boolean enableLocalTxn_ ;
        /**
         * <code>optional bool enable_local_txn = 8;</code>
         * @return Whether the enableLocalTxn field is set.
         */
        @java.lang.Override
        public boolean hasEnableLocalTxn() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>optional bool enable_local_txn = 8;</code>
         * @return The enableLocalTxn.
         */
        @java.lang.Override
        public boolean getEnableLocalTxn() {
          return enableLocalTxn_;
        }
        /**
         * <code>optional bool enable_local_txn = 8;</code>
         * @param value The enableLocalTxn to set.
         * @return This builder for chaining.
         */
        public Builder setEnableLocalTxn(boolean value) {
  
          enableLocalTxn_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool enable_local_txn = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearEnableLocalTxn() {
          bitField0_ = (bitField0_ & ~0x00000080);
          enableLocalTxn_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CreateTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CreateTableRequest>() {
        @java.lang.Override
        public CreateTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CreateTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse}
     */
    public static final class CreateTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse)
        CreateTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CreateTableResponse.class.getName());
      }
      // Use CreateTableResponse.newBuilder() to construct.
      private CreateTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CreateTableResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CreateTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CreateTableResponse>() {
        @java.lang.Override
        public CreateTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CreateIndexRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string main_table_name = 1;</code>
       * @return Whether the mainTableName field is set.
       */
      boolean hasMainTableName();
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The mainTableName.
       */
      java.lang.String getMainTableName();
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The bytes for mainTableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMainTableNameBytes();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       * @return Whether the indexMeta field is set.
       */
      boolean hasIndexMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       * @return The indexMeta.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetaOrBuilder();
  
      /**
       * <code>optional bool include_base_data = 3;</code>
       * @return Whether the includeBaseData field is set.
       */
      boolean hasIncludeBaseData();
      /**
       * <code>optional bool include_base_data = 3;</code>
       * @return The includeBaseData.
       */
      boolean getIncludeBaseData();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest}
     */
    public static final class CreateIndexRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest)
        CreateIndexRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CreateIndexRequest.class.getName());
      }
      // Use CreateIndexRequest.newBuilder() to construct.
      private CreateIndexRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CreateIndexRequest() {
        mainTableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int MAIN_TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object mainTableName_ = "";
      /**
       * <code>required string main_table_name = 1;</code>
       * @return Whether the mainTableName field is set.
       */
      @java.lang.Override
      public boolean hasMainTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The mainTableName.
       */
      @java.lang.Override
      public java.lang.String getMainTableName() {
        java.lang.Object ref = mainTableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            mainTableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The bytes for mainTableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMainTableNameBytes() {
        java.lang.Object ref = mainTableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          mainTableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int INDEX_META_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta indexMeta_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       * @return Whether the indexMeta field is set.
       */
      @java.lang.Override
      public boolean hasIndexMeta() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       * @return The indexMeta.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMeta() {
        return indexMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance() : indexMeta_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetaOrBuilder() {
        return indexMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance() : indexMeta_;
      }
  
      public static final int INCLUDE_BASE_DATA_FIELD_NUMBER = 3;
      private boolean includeBaseData_ = false;
      /**
       * <code>optional bool include_base_data = 3;</code>
       * @return Whether the includeBaseData field is set.
       */
      @java.lang.Override
      public boolean hasIncludeBaseData() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bool include_base_data = 3;</code>
       * @return The includeBaseData.
       */
      @java.lang.Override
      public boolean getIncludeBaseData() {
        return includeBaseData_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasMainTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasIndexMeta()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getIndexMeta().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, mainTableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getIndexMeta());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBool(3, includeBaseData_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, mainTableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getIndexMeta());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(3, includeBaseData_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest) obj;
  
        if (hasMainTableName() != other.hasMainTableName()) return false;
        if (hasMainTableName()) {
          if (!getMainTableName()
              .equals(other.getMainTableName())) return false;
        }
        if (hasIndexMeta() != other.hasIndexMeta()) return false;
        if (hasIndexMeta()) {
          if (!getIndexMeta()
              .equals(other.getIndexMeta())) return false;
        }
        if (hasIncludeBaseData() != other.hasIncludeBaseData()) return false;
        if (hasIncludeBaseData()) {
          if (getIncludeBaseData()
              != other.getIncludeBaseData()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasMainTableName()) {
          hash = (37 * hash) + MAIN_TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getMainTableName().hashCode();
        }
        if (hasIndexMeta()) {
          hash = (37 * hash) + INDEX_META_FIELD_NUMBER;
          hash = (53 * hash) + getIndexMeta().hashCode();
        }
        if (hasIncludeBaseData()) {
          hash = (37 * hash) + INCLUDE_BASE_DATA_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIncludeBaseData());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getIndexMetaFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          mainTableName_ = "";
          indexMeta_ = null;
          if (indexMetaBuilder_ != null) {
            indexMetaBuilder_.dispose();
            indexMetaBuilder_ = null;
          }
          includeBaseData_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.mainTableName_ = mainTableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.indexMeta_ = indexMetaBuilder_ == null
                ? indexMeta_
                : indexMetaBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.includeBaseData_ = includeBaseData_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest.getDefaultInstance()) return this;
          if (other.hasMainTableName()) {
            mainTableName_ = other.mainTableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasIndexMeta()) {
            mergeIndexMeta(other.getIndexMeta());
          }
          if (other.hasIncludeBaseData()) {
            setIncludeBaseData(other.getIncludeBaseData());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasMainTableName()) {
            return false;
          }
          if (!hasIndexMeta()) {
            return false;
          }
          if (!getIndexMeta().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  mainTableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getIndexMetaFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  includeBaseData_ = input.readBool();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object mainTableName_ = "";
        /**
         * <code>required string main_table_name = 1;</code>
         * @return Whether the mainTableName field is set.
         */
        public boolean hasMainTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return The mainTableName.
         */
        public java.lang.String getMainTableName() {
          java.lang.Object ref = mainTableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              mainTableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return The bytes for mainTableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getMainTableNameBytes() {
          java.lang.Object ref = mainTableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            mainTableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @param value The mainTableName to set.
         * @return This builder for chaining.
         */
        public Builder setMainTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          mainTableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearMainTableName() {
          mainTableName_ = getDefaultInstance().getMainTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @param value The bytes for mainTableName to set.
         * @return This builder for chaining.
         */
        public Builder setMainTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          mainTableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta indexMeta_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> indexMetaBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         * @return Whether the indexMeta field is set.
         */
        public boolean hasIndexMeta() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         * @return The indexMeta.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMeta() {
          if (indexMetaBuilder_ == null) {
            return indexMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance() : indexMeta_;
          } else {
            return indexMetaBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public Builder setIndexMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            indexMeta_ = value;
          } else {
            indexMetaBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public Builder setIndexMeta(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetaBuilder_ == null) {
            indexMeta_ = builderForValue.build();
          } else {
            indexMetaBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public Builder mergeIndexMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetaBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              indexMeta_ != null &&
              indexMeta_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance()) {
              getIndexMetaBuilder().mergeFrom(value);
            } else {
              indexMeta_ = value;
            }
          } else {
            indexMetaBuilder_.mergeFrom(value);
          }
          if (indexMeta_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public Builder clearIndexMeta() {
          bitField0_ = (bitField0_ & ~0x00000002);
          indexMeta_ = null;
          if (indexMetaBuilder_ != null) {
            indexMetaBuilder_.dispose();
            indexMetaBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder getIndexMetaBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getIndexMetaFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetaOrBuilder() {
          if (indexMetaBuilder_ != null) {
            return indexMetaBuilder_.getMessageOrBuilder();
          } else {
            return indexMeta_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance() : indexMeta_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_meta = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
            getIndexMetaFieldBuilder() {
          if (indexMetaBuilder_ == null) {
            indexMetaBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder>(
                    getIndexMeta(),
                    getParentForChildren(),
                    isClean());
            indexMeta_ = null;
          }
          return indexMetaBuilder_;
        }
  
        private boolean includeBaseData_ ;
        /**
         * <code>optional bool include_base_data = 3;</code>
         * @return Whether the includeBaseData field is set.
         */
        @java.lang.Override
        public boolean hasIncludeBaseData() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bool include_base_data = 3;</code>
         * @return The includeBaseData.
         */
        @java.lang.Override
        public boolean getIncludeBaseData() {
          return includeBaseData_;
        }
        /**
         * <code>optional bool include_base_data = 3;</code>
         * @param value The includeBaseData to set.
         * @return This builder for chaining.
         */
        public Builder setIncludeBaseData(boolean value) {
  
          includeBaseData_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool include_base_data = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearIncludeBaseData() {
          bitField0_ = (bitField0_ & ~0x00000004);
          includeBaseData_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CreateIndexRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CreateIndexRequest>() {
        @java.lang.Override
        public CreateIndexRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CreateIndexResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse}
     */
    public static final class CreateIndexResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse)
        CreateIndexResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CreateIndexResponse.class.getName());
      }
      // Use CreateIndexResponse.newBuilder() to construct.
      private CreateIndexResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CreateIndexResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CreateIndexResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CreateIndexResponse>() {
        @java.lang.Override
        public CreateIndexResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CreateIndexResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CreateIndexResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DropIndexRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string main_table_name = 1;</code>
       * @return Whether the mainTableName field is set.
       */
      boolean hasMainTableName();
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The mainTableName.
       */
      java.lang.String getMainTableName();
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The bytes for mainTableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMainTableNameBytes();
  
      /**
       * <code>required string index_name = 2;</code>
       * @return Whether the indexName field is set.
       */
      boolean hasIndexName();
      /**
       * <code>required string index_name = 2;</code>
       * @return The indexName.
       */
      java.lang.String getIndexName();
      /**
       * <code>required string index_name = 2;</code>
       * @return The bytes for indexName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getIndexNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest}
     */
    public static final class DropIndexRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest)
        DropIndexRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DropIndexRequest.class.getName());
      }
      // Use DropIndexRequest.newBuilder() to construct.
      private DropIndexRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DropIndexRequest() {
        mainTableName_ = "";
        indexName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int MAIN_TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object mainTableName_ = "";
      /**
       * <code>required string main_table_name = 1;</code>
       * @return Whether the mainTableName field is set.
       */
      @java.lang.Override
      public boolean hasMainTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The mainTableName.
       */
      @java.lang.Override
      public java.lang.String getMainTableName() {
        java.lang.Object ref = mainTableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            mainTableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string main_table_name = 1;</code>
       * @return The bytes for mainTableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getMainTableNameBytes() {
        java.lang.Object ref = mainTableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          mainTableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int INDEX_NAME_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object indexName_ = "";
      /**
       * <code>required string index_name = 2;</code>
       * @return Whether the indexName field is set.
       */
      @java.lang.Override
      public boolean hasIndexName() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required string index_name = 2;</code>
       * @return The indexName.
       */
      @java.lang.Override
      public java.lang.String getIndexName() {
        java.lang.Object ref = indexName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            indexName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string index_name = 2;</code>
       * @return The bytes for indexName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getIndexNameBytes() {
        java.lang.Object ref = indexName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          indexName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasMainTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasIndexName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, mainTableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, indexName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, mainTableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, indexName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest) obj;
  
        if (hasMainTableName() != other.hasMainTableName()) return false;
        if (hasMainTableName()) {
          if (!getMainTableName()
              .equals(other.getMainTableName())) return false;
        }
        if (hasIndexName() != other.hasIndexName()) return false;
        if (hasIndexName()) {
          if (!getIndexName()
              .equals(other.getIndexName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasMainTableName()) {
          hash = (37 * hash) + MAIN_TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getMainTableName().hashCode();
        }
        if (hasIndexName()) {
          hash = (37 * hash) + INDEX_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getIndexName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          mainTableName_ = "";
          indexName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.mainTableName_ = mainTableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.indexName_ = indexName_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest.getDefaultInstance()) return this;
          if (other.hasMainTableName()) {
            mainTableName_ = other.mainTableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasIndexName()) {
            indexName_ = other.indexName_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasMainTableName()) {
            return false;
          }
          if (!hasIndexName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  mainTableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  indexName_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object mainTableName_ = "";
        /**
         * <code>required string main_table_name = 1;</code>
         * @return Whether the mainTableName field is set.
         */
        public boolean hasMainTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return The mainTableName.
         */
        public java.lang.String getMainTableName() {
          java.lang.Object ref = mainTableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              mainTableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return The bytes for mainTableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getMainTableNameBytes() {
          java.lang.Object ref = mainTableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            mainTableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @param value The mainTableName to set.
         * @return This builder for chaining.
         */
        public Builder setMainTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          mainTableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearMainTableName() {
          mainTableName_ = getDefaultInstance().getMainTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string main_table_name = 1;</code>
         * @param value The bytes for mainTableName to set.
         * @return This builder for chaining.
         */
        public Builder setMainTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          mainTableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object indexName_ = "";
        /**
         * <code>required string index_name = 2;</code>
         * @return Whether the indexName field is set.
         */
        public boolean hasIndexName() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required string index_name = 2;</code>
         * @return The indexName.
         */
        public java.lang.String getIndexName() {
          java.lang.Object ref = indexName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              indexName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string index_name = 2;</code>
         * @return The bytes for indexName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getIndexNameBytes() {
          java.lang.Object ref = indexName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            indexName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string index_name = 2;</code>
         * @param value The indexName to set.
         * @return This builder for chaining.
         */
        public Builder setIndexName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          indexName_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required string index_name = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearIndexName() {
          indexName_ = getDefaultInstance().getIndexName();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>required string index_name = 2;</code>
         * @param value The bytes for indexName to set.
         * @return This builder for chaining.
         */
        public Builder setIndexNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          indexName_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DropIndexRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DropIndexRequest>() {
        @java.lang.Override
        public DropIndexRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DropIndexResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse}
     */
    public static final class DropIndexResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse)
        DropIndexResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DropIndexResponse.class.getName());
      }
      // Use DropIndexResponse.newBuilder() to construct.
      private DropIndexResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DropIndexResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DropIndexResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DropIndexResponse>() {
        @java.lang.Override
        public DropIndexResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DropIndexResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DropIndexResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface AddDefinedColumnRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> 
          getColumnsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getColumns(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      int getColumnsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
          getColumnsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getColumnsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest}
     */
    public static final class AddDefinedColumnRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest)
        AddDefinedColumnRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          AddDefinedColumnRequest.class.getName());
      }
      // Use AddDefinedColumnRequest.newBuilder() to construct.
      private AddDefinedColumnRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private AddDefinedColumnRequest() {
        tableName_ = "";
        columns_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int COLUMNS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> columns_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> getColumnsList() {
        return columns_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
          getColumnsOrBuilderList() {
        return columns_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      @java.lang.Override
      public int getColumnsCount() {
        return columns_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getColumns(int index) {
        return columns_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getColumnsOrBuilder(
          int index) {
        return columns_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getColumnsCount(); i++) {
          if (!getColumns(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < columns_.size(); i++) {
          output.writeMessage(2, columns_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < columns_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, columns_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getColumnsList()
            .equals(other.getColumnsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getColumnsCount() > 0) {
          hash = (37 * hash) + COLUMNS_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (columnsBuilder_ == null) {
            columns_ = java.util.Collections.emptyList();
          } else {
            columns_ = null;
            columnsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest result) {
          if (columnsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              columns_ = java.util.Collections.unmodifiableList(columns_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.columns_ = columns_;
          } else {
            result.columns_ = columnsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (columnsBuilder_ == null) {
            if (!other.columns_.isEmpty()) {
              if (columns_.isEmpty()) {
                columns_ = other.columns_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureColumnsIsMutable();
                columns_.addAll(other.columns_);
              }
              onChanged();
            }
          } else {
            if (!other.columns_.isEmpty()) {
              if (columnsBuilder_.isEmpty()) {
                columnsBuilder_.dispose();
                columnsBuilder_ = null;
                columns_ = other.columns_;
                bitField0_ = (bitField0_ & ~0x00000002);
                columnsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getColumnsFieldBuilder() : null;
              } else {
                columnsBuilder_.addAllMessages(other.columns_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getColumnsCount(); i++) {
            if (!getColumns(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.parser(),
                          extensionRegistry);
                  if (columnsBuilder_ == null) {
                    ensureColumnsIsMutable();
                    columns_.add(m);
                  } else {
                    columnsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> columns_ =
          java.util.Collections.emptyList();
        private void ensureColumnsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            columns_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema>(columns_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> columnsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> getColumnsList() {
          if (columnsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(columns_);
          } else {
            return columnsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public int getColumnsCount() {
          if (columnsBuilder_ == null) {
            return columns_.size();
          } else {
            return columnsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema getColumns(int index) {
          if (columnsBuilder_ == null) {
            return columns_.get(index);
          } else {
            return columnsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder setColumns(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (columnsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureColumnsIsMutable();
            columns_.set(index, value);
            onChanged();
          } else {
            columnsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder setColumns(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (columnsBuilder_ == null) {
            ensureColumnsIsMutable();
            columns_.set(index, builderForValue.build());
            onChanged();
          } else {
            columnsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder addColumns(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (columnsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureColumnsIsMutable();
            columns_.add(value);
            onChanged();
          } else {
            columnsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder addColumns(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema value) {
          if (columnsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureColumnsIsMutable();
            columns_.add(index, value);
            onChanged();
          } else {
            columnsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder addColumns(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (columnsBuilder_ == null) {
            ensureColumnsIsMutable();
            columns_.add(builderForValue.build());
            onChanged();
          } else {
            columnsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder addColumns(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder builderForValue) {
          if (columnsBuilder_ == null) {
            ensureColumnsIsMutable();
            columns_.add(index, builderForValue.build());
            onChanged();
          } else {
            columnsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder addAllColumns(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema> values) {
          if (columnsBuilder_ == null) {
            ensureColumnsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, columns_);
            onChanged();
          } else {
            columnsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder clearColumns() {
          if (columnsBuilder_ == null) {
            columns_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            columnsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public Builder removeColumns(int index) {
          if (columnsBuilder_ == null) {
            ensureColumnsIsMutable();
            columns_.remove(index);
            onChanged();
          } else {
            columnsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder getColumnsBuilder(
            int index) {
          return getColumnsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder getColumnsOrBuilder(
            int index) {
          if (columnsBuilder_ == null) {
            return columns_.get(index);  } else {
            return columnsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
             getColumnsOrBuilderList() {
          if (columnsBuilder_ != null) {
            return columnsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(columns_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder addColumnsBuilder() {
          return getColumnsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder addColumnsBuilder(
            int index) {
          return getColumnsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.DefinedColumnSchema columns = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder> 
             getColumnsBuilderList() {
          return getColumnsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder> 
            getColumnsFieldBuilder() {
          if (columnsBuilder_ == null) {
            columnsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DefinedColumnSchemaOrBuilder>(
                    columns_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            columns_ = null;
          }
          return columnsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<AddDefinedColumnRequest>() {
        @java.lang.Override
        public AddDefinedColumnRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface AddDefinedColumnResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse}
     */
    public static final class AddDefinedColumnResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse)
        AddDefinedColumnResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          AddDefinedColumnResponse.class.getName());
      }
      // Use AddDefinedColumnResponse.newBuilder() to construct.
      private AddDefinedColumnResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private AddDefinedColumnResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.AddDefinedColumnResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<AddDefinedColumnResponse>() {
        @java.lang.Override
        public AddDefinedColumnResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AddDefinedColumnResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AddDefinedColumnResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteDefinedColumnRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated string columns = 2;</code>
       * @return A list containing the columns.
       */
      java.util.List<java.lang.String>
          getColumnsList();
      /**
       * <code>repeated string columns = 2;</code>
       * @return The count of columns.
       */
      int getColumnsCount();
      /**
       * <code>repeated string columns = 2;</code>
       * @param index The index of the element to return.
       * @return The columns at the given index.
       */
      java.lang.String getColumns(int index);
      /**
       * <code>repeated string columns = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columns at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsBytes(int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest}
     */
    public static final class DeleteDefinedColumnRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest)
        DeleteDefinedColumnRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteDefinedColumnRequest.class.getName());
      }
      // Use DeleteDefinedColumnRequest.newBuilder() to construct.
      private DeleteDefinedColumnRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteDefinedColumnRequest() {
        tableName_ = "";
        columns_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int COLUMNS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columns_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns = 2;</code>
       * @return A list containing the columns.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsList() {
        return columns_;
      }
      /**
       * <code>repeated string columns = 2;</code>
       * @return The count of columns.
       */
      public int getColumnsCount() {
        return columns_.size();
      }
      /**
       * <code>repeated string columns = 2;</code>
       * @param index The index of the element to return.
       * @return The columns at the given index.
       */
      public java.lang.String getColumns(int index) {
        return columns_.get(index);
      }
      /**
       * <code>repeated string columns = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columns at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsBytes(int index) {
        return columns_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < columns_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, columns_.getRaw(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columns_.size(); i++) {
            dataSize += computeStringSizeNoTag(columns_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getColumnsList()
            .equals(other.getColumnsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getColumnsCount() > 0) {
          hash = (37 * hash) + COLUMNS_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          columns_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            columns_.makeImmutable();
            result.columns_ = columns_;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (!other.columns_.isEmpty()) {
            if (columns_.isEmpty()) {
              columns_ = other.columns_;
              bitField0_ |= 0x00000002;
            } else {
              ensureColumnsIsMutable();
              columns_.addAll(other.columns_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsIsMutable();
                  columns_.add(bs);
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columns_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsIsMutable() {
          if (!columns_.isModifiable()) {
            columns_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columns_);
          }
          bitField0_ |= 0x00000002;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @return A list containing the columns.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsList() {
          columns_.makeImmutable();
          return columns_;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @return The count of columns.
         */
        public int getColumnsCount() {
          return columns_.size();
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param index The index of the element to return.
         * @return The columns at the given index.
         */
        public java.lang.String getColumns(int index) {
          return columns_.get(index);
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columns at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsBytes(int index) {
          return columns_.getByteString(index);
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param index The index to set the value at.
         * @param value The columns to set.
         * @return This builder for chaining.
         */
        public Builder setColumns(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsIsMutable();
          columns_.set(index, value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param value The columns to add.
         * @return This builder for chaining.
         */
        public Builder addColumns(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsIsMutable();
          columns_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param values The columns to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumns(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columns_);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumns() {
          columns_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns = 2;</code>
         * @param value The bytes of the columns to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsIsMutable();
          columns_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteDefinedColumnRequest>() {
        @java.lang.Override
        public DeleteDefinedColumnRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteDefinedColumnResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse}
     */
    public static final class DeleteDefinedColumnResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse)
        DeleteDefinedColumnResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteDefinedColumnResponse.class.getName());
      }
      // Use DeleteDefinedColumnResponse.newBuilder() to construct.
      private DeleteDefinedColumnResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteDefinedColumnResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteDefinedColumnResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteDefinedColumnResponse>() {
        @java.lang.Override
        public DeleteDefinedColumnResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteDefinedColumnResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteDefinedColumnResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UpdateTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return Whether the reservedThroughput field is set.
       */
      boolean hasReservedThroughput();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return The reservedThroughput.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      boolean hasTableOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       * @return Whether the streamSpec field is set.
       */
      boolean hasStreamSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       * @return The streamSpec.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest}
     */
    public static final class UpdateTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest)
        UpdateTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UpdateTableRequest.class.getName());
      }
      // Use UpdateTableRequest.newBuilder() to construct.
      private UpdateTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UpdateTableRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int RESERVED_THROUGHPUT_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return Whether the reservedThroughput field is set.
       */
      @java.lang.Override
      public boolean hasReservedThroughput() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       * @return The reservedThroughput.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
  
      public static final int TABLE_OPTIONS_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      @java.lang.Override
      public boolean hasTableOptions() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
  
      public static final int STREAM_SPEC_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification streamSpec_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       * @return Whether the streamSpec field is set.
       */
      @java.lang.Override
      public boolean hasStreamSpec() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       * @return The streamSpec.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec() {
        return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder() {
        return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasReservedThroughput()) {
          if (!getReservedThroughput().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasStreamSpec()) {
          if (!getStreamSpec().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getReservedThroughput());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getTableOptions());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(4, getStreamSpec());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getReservedThroughput());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getTableOptions());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getStreamSpec());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasReservedThroughput() != other.hasReservedThroughput()) return false;
        if (hasReservedThroughput()) {
          if (!getReservedThroughput()
              .equals(other.getReservedThroughput())) return false;
        }
        if (hasTableOptions() != other.hasTableOptions()) return false;
        if (hasTableOptions()) {
          if (!getTableOptions()
              .equals(other.getTableOptions())) return false;
        }
        if (hasStreamSpec() != other.hasStreamSpec()) return false;
        if (hasStreamSpec()) {
          if (!getStreamSpec()
              .equals(other.getStreamSpec())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasReservedThroughput()) {
          hash = (37 * hash) + RESERVED_THROUGHPUT_FIELD_NUMBER;
          hash = (53 * hash) + getReservedThroughput().hashCode();
        }
        if (hasTableOptions()) {
          hash = (37 * hash) + TABLE_OPTIONS_FIELD_NUMBER;
          hash = (53 * hash) + getTableOptions().hashCode();
        }
        if (hasStreamSpec()) {
          hash = (37 * hash) + STREAM_SPEC_FIELD_NUMBER;
          hash = (53 * hash) + getStreamSpec().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getReservedThroughputFieldBuilder();
            getTableOptionsFieldBuilder();
            getStreamSpecFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          streamSpec_ = null;
          if (streamSpecBuilder_ != null) {
            streamSpecBuilder_.dispose();
            streamSpecBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.reservedThroughput_ = reservedThroughputBuilder_ == null
                ? reservedThroughput_
                : reservedThroughputBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.tableOptions_ = tableOptionsBuilder_ == null
                ? tableOptions_
                : tableOptionsBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.streamSpec_ = streamSpecBuilder_ == null
                ? streamSpec_
                : streamSpecBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasReservedThroughput()) {
            mergeReservedThroughput(other.getReservedThroughput());
          }
          if (other.hasTableOptions()) {
            mergeTableOptions(other.getTableOptions());
          }
          if (other.hasStreamSpec()) {
            mergeStreamSpec(other.getStreamSpec());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (hasReservedThroughput()) {
            if (!getReservedThroughput().isInitialized()) {
              return false;
            }
          }
          if (hasStreamSpec()) {
            if (!getStreamSpec().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getReservedThroughputFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getTableOptionsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getStreamSpecFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> reservedThroughputBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         * @return Whether the reservedThroughput field is set.
         */
        public boolean hasReservedThroughput() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         * @return The reservedThroughput.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
          if (reservedThroughputBuilder_ == null) {
            return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          } else {
            return reservedThroughputBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder setReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            reservedThroughput_ = value;
          } else {
            reservedThroughputBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder setReservedThroughput(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder builderForValue) {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughput_ = builderForValue.build();
          } else {
            reservedThroughputBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder mergeReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              reservedThroughput_ != null &&
              reservedThroughput_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance()) {
              getReservedThroughputBuilder().mergeFrom(value);
            } else {
              reservedThroughput_ = value;
            }
          } else {
            reservedThroughputBuilder_.mergeFrom(value);
          }
          if (reservedThroughput_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public Builder clearReservedThroughput() {
          bitField0_ = (bitField0_ & ~0x00000002);
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder getReservedThroughputBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getReservedThroughputFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
          if (reservedThroughputBuilder_ != null) {
            return reservedThroughputBuilder_.getMessageOrBuilder();
          } else {
            return reservedThroughput_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> 
            getReservedThroughputFieldBuilder() {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughputBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder>(
                    getReservedThroughput(),
                    getParentForChildren(),
                    isClean());
            reservedThroughput_ = null;
          }
          return reservedThroughputBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> tableOptionsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return Whether the tableOptions field is set.
         */
        public boolean hasTableOptions() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return The tableOptions.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
          if (tableOptionsBuilder_ == null) {
            return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          } else {
            return tableOptionsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableOptions_ = value;
          } else {
            tableOptionsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder builderForValue) {
          if (tableOptionsBuilder_ == null) {
            tableOptions_ = builderForValue.build();
          } else {
            tableOptionsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder mergeTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              tableOptions_ != null &&
              tableOptions_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance()) {
              getTableOptionsBuilder().mergeFrom(value);
            } else {
              tableOptions_ = value;
            }
          } else {
            tableOptionsBuilder_.mergeFrom(value);
          }
          if (tableOptions_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder clearTableOptions() {
          bitField0_ = (bitField0_ & ~0x00000004);
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder getTableOptionsBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getTableOptionsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
          if (tableOptionsBuilder_ != null) {
            return tableOptionsBuilder_.getMessageOrBuilder();
          } else {
            return tableOptions_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> 
            getTableOptionsFieldBuilder() {
          if (tableOptionsBuilder_ == null) {
            tableOptionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder>(
                    getTableOptions(),
                    getParentForChildren(),
                    isClean());
            tableOptions_ = null;
          }
          return tableOptionsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification streamSpec_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder> streamSpecBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         * @return Whether the streamSpec field is set.
         */
        public boolean hasStreamSpec() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         * @return The streamSpec.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification getStreamSpec() {
          if (streamSpecBuilder_ == null) {
            return streamSpec_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
          } else {
            return streamSpecBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public Builder setStreamSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification value) {
          if (streamSpecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            streamSpec_ = value;
          } else {
            streamSpecBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public Builder setStreamSpec(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder builderForValue) {
          if (streamSpecBuilder_ == null) {
            streamSpec_ = builderForValue.build();
          } else {
            streamSpecBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public Builder mergeStreamSpec(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification value) {
          if (streamSpecBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              streamSpec_ != null &&
              streamSpec_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance()) {
              getStreamSpecBuilder().mergeFrom(value);
            } else {
              streamSpec_ = value;
            }
          } else {
            streamSpecBuilder_.mergeFrom(value);
          }
          if (streamSpec_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public Builder clearStreamSpec() {
          bitField0_ = (bitField0_ & ~0x00000008);
          streamSpec_ = null;
          if (streamSpecBuilder_ != null) {
            streamSpecBuilder_.dispose();
            streamSpecBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder getStreamSpecBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getStreamSpecFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder getStreamSpecOrBuilder() {
          if (streamSpecBuilder_ != null) {
            return streamSpecBuilder_.getMessageOrBuilder();
          } else {
            return streamSpec_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.getDefaultInstance() : streamSpec_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamSpecification stream_spec = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder> 
            getStreamSpecFieldBuilder() {
          if (streamSpecBuilder_ == null) {
            streamSpecBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecification.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamSpecificationOrBuilder>(
                    getStreamSpec(),
                    getParentForChildren(),
                    isClean());
            streamSpec_ = null;
          }
          return streamSpecBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UpdateTableRequest>() {
        @java.lang.Override
        public UpdateTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UpdateTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       * @return Whether the reservedThroughputDetails field is set.
       */
      boolean hasReservedThroughputDetails();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       * @return The reservedThroughputDetails.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       * @return Whether the tableOptions field is set.
       */
      boolean hasTableOptions();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       * @return The tableOptions.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       * @return Whether the streamDetails field is set.
       */
      boolean hasStreamDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       * @return The streamDetails.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse}
     */
    public static final class UpdateTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse)
        UpdateTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UpdateTableResponse.class.getName());
      }
      // Use UpdateTableResponse.newBuilder() to construct.
      private UpdateTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UpdateTableResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int RESERVED_THROUGHPUT_DETAILS_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails reservedThroughputDetails_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       * @return Whether the reservedThroughputDetails field is set.
       */
      @java.lang.Override
      public boolean hasReservedThroughputDetails() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       * @return The reservedThroughputDetails.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails() {
        return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder() {
        return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
      }
  
      public static final int TABLE_OPTIONS_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       * @return Whether the tableOptions field is set.
       */
      @java.lang.Override
      public boolean hasTableOptions() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       * @return The tableOptions.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
  
      public static final int STREAM_DETAILS_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails streamDetails_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       * @return Whether the streamDetails field is set.
       */
      @java.lang.Override
      public boolean hasStreamDetails() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       * @return The streamDetails.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails() {
        return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder() {
        return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasReservedThroughputDetails()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasTableOptions()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getReservedThroughputDetails().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasStreamDetails()) {
          if (!getStreamDetails().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getReservedThroughputDetails());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getTableOptions());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getStreamDetails());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getReservedThroughputDetails());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getTableOptions());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getStreamDetails());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse) obj;
  
        if (hasReservedThroughputDetails() != other.hasReservedThroughputDetails()) return false;
        if (hasReservedThroughputDetails()) {
          if (!getReservedThroughputDetails()
              .equals(other.getReservedThroughputDetails())) return false;
        }
        if (hasTableOptions() != other.hasTableOptions()) return false;
        if (hasTableOptions()) {
          if (!getTableOptions()
              .equals(other.getTableOptions())) return false;
        }
        if (hasStreamDetails() != other.hasStreamDetails()) return false;
        if (hasStreamDetails()) {
          if (!getStreamDetails()
              .equals(other.getStreamDetails())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasReservedThroughputDetails()) {
          hash = (37 * hash) + RESERVED_THROUGHPUT_DETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getReservedThroughputDetails().hashCode();
        }
        if (hasTableOptions()) {
          hash = (37 * hash) + TABLE_OPTIONS_FIELD_NUMBER;
          hash = (53 * hash) + getTableOptions().hashCode();
        }
        if (hasStreamDetails()) {
          hash = (37 * hash) + STREAM_DETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getStreamDetails().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getReservedThroughputDetailsFieldBuilder();
            getTableOptionsFieldBuilder();
            getStreamDetailsFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          reservedThroughputDetails_ = null;
          if (reservedThroughputDetailsBuilder_ != null) {
            reservedThroughputDetailsBuilder_.dispose();
            reservedThroughputDetailsBuilder_ = null;
          }
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          streamDetails_ = null;
          if (streamDetailsBuilder_ != null) {
            streamDetailsBuilder_.dispose();
            streamDetailsBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.reservedThroughputDetails_ = reservedThroughputDetailsBuilder_ == null
                ? reservedThroughputDetails_
                : reservedThroughputDetailsBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.tableOptions_ = tableOptionsBuilder_ == null
                ? tableOptions_
                : tableOptionsBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.streamDetails_ = streamDetailsBuilder_ == null
                ? streamDetails_
                : streamDetailsBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse.getDefaultInstance()) return this;
          if (other.hasReservedThroughputDetails()) {
            mergeReservedThroughputDetails(other.getReservedThroughputDetails());
          }
          if (other.hasTableOptions()) {
            mergeTableOptions(other.getTableOptions());
          }
          if (other.hasStreamDetails()) {
            mergeStreamDetails(other.getStreamDetails());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasReservedThroughputDetails()) {
            return false;
          }
          if (!hasTableOptions()) {
            return false;
          }
          if (!getReservedThroughputDetails().isInitialized()) {
            return false;
          }
          if (hasStreamDetails()) {
            if (!getStreamDetails().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getReservedThroughputDetailsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getTableOptionsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getStreamDetailsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails reservedThroughputDetails_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder> reservedThroughputDetailsBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         * @return Whether the reservedThroughputDetails field is set.
         */
        public boolean hasReservedThroughputDetails() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         * @return The reservedThroughputDetails.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails() {
          if (reservedThroughputDetailsBuilder_ == null) {
            return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
          } else {
            return reservedThroughputDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public Builder setReservedThroughputDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails value) {
          if (reservedThroughputDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            reservedThroughputDetails_ = value;
          } else {
            reservedThroughputDetailsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public Builder setReservedThroughputDetails(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder builderForValue) {
          if (reservedThroughputDetailsBuilder_ == null) {
            reservedThroughputDetails_ = builderForValue.build();
          } else {
            reservedThroughputDetailsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public Builder mergeReservedThroughputDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails value) {
          if (reservedThroughputDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              reservedThroughputDetails_ != null &&
              reservedThroughputDetails_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance()) {
              getReservedThroughputDetailsBuilder().mergeFrom(value);
            } else {
              reservedThroughputDetails_ = value;
            }
          } else {
            reservedThroughputDetailsBuilder_.mergeFrom(value);
          }
          if (reservedThroughputDetails_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public Builder clearReservedThroughputDetails() {
          bitField0_ = (bitField0_ & ~0x00000001);
          reservedThroughputDetails_ = null;
          if (reservedThroughputDetailsBuilder_ != null) {
            reservedThroughputDetailsBuilder_.dispose();
            reservedThroughputDetailsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder getReservedThroughputDetailsBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getReservedThroughputDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder() {
          if (reservedThroughputDetailsBuilder_ != null) {
            return reservedThroughputDetailsBuilder_.getMessageOrBuilder();
          } else {
            return reservedThroughputDetails_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder> 
            getReservedThroughputDetailsFieldBuilder() {
          if (reservedThroughputDetailsBuilder_ == null) {
            reservedThroughputDetailsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder>(
                    getReservedThroughputDetails(),
                    getParentForChildren(),
                    isClean());
            reservedThroughputDetails_ = null;
          }
          return reservedThroughputDetailsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> tableOptionsBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         * @return Whether the tableOptions field is set.
         */
        public boolean hasTableOptions() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         * @return The tableOptions.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
          if (tableOptionsBuilder_ == null) {
            return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          } else {
            return tableOptionsBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public Builder setTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableOptions_ = value;
          } else {
            tableOptionsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public Builder setTableOptions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder builderForValue) {
          if (tableOptionsBuilder_ == null) {
            tableOptions_ = builderForValue.build();
          } else {
            tableOptionsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public Builder mergeTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              tableOptions_ != null &&
              tableOptions_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance()) {
              getTableOptionsBuilder().mergeFrom(value);
            } else {
              tableOptions_ = value;
            }
          } else {
            tableOptionsBuilder_.mergeFrom(value);
          }
          if (tableOptions_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public Builder clearTableOptions() {
          bitField0_ = (bitField0_ & ~0x00000002);
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder getTableOptionsBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getTableOptionsFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
          if (tableOptionsBuilder_ != null) {
            return tableOptionsBuilder_.getMessageOrBuilder();
          } else {
            return tableOptions_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> 
            getTableOptionsFieldBuilder() {
          if (tableOptionsBuilder_ == null) {
            tableOptionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder>(
                    getTableOptions(),
                    getParentForChildren(),
                    isClean());
            tableOptions_ = null;
          }
          return tableOptionsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails streamDetails_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder> streamDetailsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         * @return Whether the streamDetails field is set.
         */
        public boolean hasStreamDetails() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         * @return The streamDetails.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails() {
          if (streamDetailsBuilder_ == null) {
            return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
          } else {
            return streamDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public Builder setStreamDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails value) {
          if (streamDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            streamDetails_ = value;
          } else {
            streamDetailsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public Builder setStreamDetails(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder builderForValue) {
          if (streamDetailsBuilder_ == null) {
            streamDetails_ = builderForValue.build();
          } else {
            streamDetailsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public Builder mergeStreamDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails value) {
          if (streamDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              streamDetails_ != null &&
              streamDetails_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance()) {
              getStreamDetailsBuilder().mergeFrom(value);
            } else {
              streamDetails_ = value;
            }
          } else {
            streamDetailsBuilder_.mergeFrom(value);
          }
          if (streamDetails_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public Builder clearStreamDetails() {
          bitField0_ = (bitField0_ & ~0x00000004);
          streamDetails_ = null;
          if (streamDetailsBuilder_ != null) {
            streamDetailsBuilder_.dispose();
            streamDetailsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder getStreamDetailsBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getStreamDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder() {
          if (streamDetailsBuilder_ != null) {
            return streamDetailsBuilder_.getMessageOrBuilder();
          } else {
            return streamDetails_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder> 
            getStreamDetailsFieldBuilder() {
          if (streamDetailsBuilder_ == null) {
            streamDetailsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder>(
                    getStreamDetails(),
                    getParentForChildren(),
                    isClean());
            streamDetails_ = null;
          }
          return streamDetailsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UpdateTableResponse>() {
        @java.lang.Override
        public UpdateTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DescribeTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest}
     */
    public static final class DescribeTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest)
        DescribeTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DescribeTableRequest.class.getName());
      }
      // Use DescribeTableRequest.newBuilder() to construct.
      private DescribeTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DescribeTableRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DescribeTableRequest>() {
        @java.lang.Override
        public DescribeTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DescribeTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return Whether the tableMeta field is set.
       */
      boolean hasTableMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return The tableMeta.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       * @return Whether the reservedThroughputDetails field is set.
       */
      boolean hasReservedThroughputDetails();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       * @return The reservedThroughputDetails.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      boolean hasTableOptions();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       * @return Whether the streamDetails field is set.
       */
      boolean hasStreamDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       * @return The streamDetails.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder();
  
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @return A list containing the shardSplits.
       */
      java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> getShardSplitsList();
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @return The count of shardSplits.
       */
      int getShardSplitsCount();
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @param index The index of the element to return.
       * @return The shardSplits at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getShardSplits(int index);
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       * @return Whether the sseDetails field is set.
       */
      boolean hasSseDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       * @return The sseDetails.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getSseDetails();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder getSseDetailsOrBuilder();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> 
          getIndexMetasList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      int getIndexMetasCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
          getIndexMetasOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
          int index);
  
      /**
       * <code>optional int64 creation_time = 9;</code>
       * @return Whether the creationTime field is set.
       */
      boolean hasCreationTime();
      /**
       * <code>optional int64 creation_time = 9;</code>
       * @return The creationTime.
       */
      long getCreationTime();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse}
     */
    public static final class DescribeTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse)
        DescribeTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DescribeTableResponse.class.getName());
      }
      // Use DescribeTableResponse.newBuilder() to construct.
      private DescribeTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DescribeTableResponse() {
        shardSplits_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        indexMetas_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_META_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta tableMeta_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return Whether the tableMeta field is set.
       */
      @java.lang.Override
      public boolean hasTableMeta() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       * @return The tableMeta.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta() {
        return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder() {
        return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
      }
  
      public static final int RESERVED_THROUGHPUT_DETAILS_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails reservedThroughputDetails_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       * @return Whether the reservedThroughputDetails field is set.
       */
      @java.lang.Override
      public boolean hasReservedThroughputDetails() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       * @return The reservedThroughputDetails.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails() {
        return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder() {
        return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
      }
  
      public static final int TABLE_OPTIONS_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return Whether the tableOptions field is set.
       */
      @java.lang.Override
      public boolean hasTableOptions() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       * @return The tableOptions.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
        return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
      }
  
      public static final int STREAM_DETAILS_FIELD_NUMBER = 5;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails streamDetails_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       * @return Whether the streamDetails field is set.
       */
      @java.lang.Override
      public boolean hasStreamDetails() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       * @return The streamDetails.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails() {
        return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder() {
        return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
      }
  
      public static final int SHARD_SPLITS_FIELD_NUMBER = 6;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> shardSplits_ =
          emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @return A list containing the shardSplits.
       */
      @java.lang.Override
      public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
          getShardSplitsList() {
        return shardSplits_;
      }
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @return The count of shardSplits.
       */
      public int getShardSplitsCount() {
        return shardSplits_.size();
      }
      /**
       * <code>repeated bytes shard_splits = 6;</code>
       * @param index The index of the element to return.
       * @return The shardSplits at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getShardSplits(int index) {
        return shardSplits_.get(index);
      }
  
      public static final int SSE_DETAILS_FIELD_NUMBER = 7;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails sseDetails_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       * @return Whether the sseDetails field is set.
       */
      @java.lang.Override
      public boolean hasSseDetails() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       * @return The sseDetails.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getSseDetails() {
        return sseDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance() : sseDetails_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder getSseDetailsOrBuilder() {
        return sseDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance() : sseDetails_;
      }
  
      public static final int INDEX_METAS_FIELD_NUMBER = 8;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> indexMetas_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> getIndexMetasList() {
        return indexMetas_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
          getIndexMetasOrBuilderList() {
        return indexMetas_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      @java.lang.Override
      public int getIndexMetasCount() {
        return indexMetas_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index) {
        return indexMetas_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
          int index) {
        return indexMetas_.get(index);
      }
  
      public static final int CREATION_TIME_FIELD_NUMBER = 9;
      private long creationTime_ = 0L;
      /**
       * <code>optional int64 creation_time = 9;</code>
       * @return Whether the creationTime field is set.
       */
      @java.lang.Override
      public boolean hasCreationTime() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional int64 creation_time = 9;</code>
       * @return The creationTime.
       */
      @java.lang.Override
      public long getCreationTime() {
        return creationTime_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasTableMeta()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasReservedThroughputDetails()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasTableOptions()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getTableMeta().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getReservedThroughputDetails().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasStreamDetails()) {
          if (!getStreamDetails().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasSseDetails()) {
          if (!getSseDetails().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        for (int i = 0; i < getIndexMetasCount(); i++) {
          if (!getIndexMetas(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getTableMeta());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getReservedThroughputDetails());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getTableOptions());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(5, getStreamDetails());
        }
        for (int i = 0; i < shardSplits_.size(); i++) {
          output.writeBytes(6, shardSplits_.get(i));
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeMessage(7, getSseDetails());
        }
        for (int i = 0; i < indexMetas_.size(); i++) {
          output.writeMessage(8, indexMetas_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          output.writeInt64(9, creationTime_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getTableMeta());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getReservedThroughputDetails());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getTableOptions());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(5, getStreamDetails());
        }
        {
          int dataSize = 0;
          for (int i = 0; i < shardSplits_.size(); i++) {
            dataSize += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(shardSplits_.get(i));
          }
          size += dataSize;
          size += 1 * getShardSplitsList().size();
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(7, getSseDetails());
        }
        for (int i = 0; i < indexMetas_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(8, indexMetas_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(9, creationTime_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse) obj;
  
        if (hasTableMeta() != other.hasTableMeta()) return false;
        if (hasTableMeta()) {
          if (!getTableMeta()
              .equals(other.getTableMeta())) return false;
        }
        if (hasReservedThroughputDetails() != other.hasReservedThroughputDetails()) return false;
        if (hasReservedThroughputDetails()) {
          if (!getReservedThroughputDetails()
              .equals(other.getReservedThroughputDetails())) return false;
        }
        if (hasTableOptions() != other.hasTableOptions()) return false;
        if (hasTableOptions()) {
          if (!getTableOptions()
              .equals(other.getTableOptions())) return false;
        }
        if (hasStreamDetails() != other.hasStreamDetails()) return false;
        if (hasStreamDetails()) {
          if (!getStreamDetails()
              .equals(other.getStreamDetails())) return false;
        }
        if (!getShardSplitsList()
            .equals(other.getShardSplitsList())) return false;
        if (hasSseDetails() != other.hasSseDetails()) return false;
        if (hasSseDetails()) {
          if (!getSseDetails()
              .equals(other.getSseDetails())) return false;
        }
        if (!getIndexMetasList()
            .equals(other.getIndexMetasList())) return false;
        if (hasCreationTime() != other.hasCreationTime()) return false;
        if (hasCreationTime()) {
          if (getCreationTime()
              != other.getCreationTime()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableMeta()) {
          hash = (37 * hash) + TABLE_META_FIELD_NUMBER;
          hash = (53 * hash) + getTableMeta().hashCode();
        }
        if (hasReservedThroughputDetails()) {
          hash = (37 * hash) + RESERVED_THROUGHPUT_DETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getReservedThroughputDetails().hashCode();
        }
        if (hasTableOptions()) {
          hash = (37 * hash) + TABLE_OPTIONS_FIELD_NUMBER;
          hash = (53 * hash) + getTableOptions().hashCode();
        }
        if (hasStreamDetails()) {
          hash = (37 * hash) + STREAM_DETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getStreamDetails().hashCode();
        }
        if (getShardSplitsCount() > 0) {
          hash = (37 * hash) + SHARD_SPLITS_FIELD_NUMBER;
          hash = (53 * hash) + getShardSplitsList().hashCode();
        }
        if (hasSseDetails()) {
          hash = (37 * hash) + SSE_DETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getSseDetails().hashCode();
        }
        if (getIndexMetasCount() > 0) {
          hash = (37 * hash) + INDEX_METAS_FIELD_NUMBER;
          hash = (53 * hash) + getIndexMetasList().hashCode();
        }
        if (hasCreationTime()) {
          hash = (37 * hash) + CREATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getCreationTime());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getTableMetaFieldBuilder();
            getReservedThroughputDetailsFieldBuilder();
            getTableOptionsFieldBuilder();
            getStreamDetailsFieldBuilder();
            getSseDetailsFieldBuilder();
            getIndexMetasFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableMeta_ = null;
          if (tableMetaBuilder_ != null) {
            tableMetaBuilder_.dispose();
            tableMetaBuilder_ = null;
          }
          reservedThroughputDetails_ = null;
          if (reservedThroughputDetailsBuilder_ != null) {
            reservedThroughputDetailsBuilder_.dispose();
            reservedThroughputDetailsBuilder_ = null;
          }
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          streamDetails_ = null;
          if (streamDetailsBuilder_ != null) {
            streamDetailsBuilder_.dispose();
            streamDetailsBuilder_ = null;
          }
          shardSplits_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          sseDetails_ = null;
          if (sseDetailsBuilder_ != null) {
            sseDetailsBuilder_.dispose();
            sseDetailsBuilder_ = null;
          }
          if (indexMetasBuilder_ == null) {
            indexMetas_ = java.util.Collections.emptyList();
          } else {
            indexMetas_ = null;
            indexMetasBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000040);
          creationTime_ = 0L;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse result) {
          if (indexMetasBuilder_ == null) {
            if (((bitField0_ & 0x00000040) != 0)) {
              indexMetas_ = java.util.Collections.unmodifiableList(indexMetas_);
              bitField0_ = (bitField0_ & ~0x00000040);
            }
            result.indexMetas_ = indexMetas_;
          } else {
            result.indexMetas_ = indexMetasBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableMeta_ = tableMetaBuilder_ == null
                ? tableMeta_
                : tableMetaBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.reservedThroughputDetails_ = reservedThroughputDetailsBuilder_ == null
                ? reservedThroughputDetails_
                : reservedThroughputDetailsBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.tableOptions_ = tableOptionsBuilder_ == null
                ? tableOptions_
                : tableOptionsBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.streamDetails_ = streamDetailsBuilder_ == null
                ? streamDetails_
                : streamDetailsBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            shardSplits_.makeImmutable();
            result.shardSplits_ = shardSplits_;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.sseDetails_ = sseDetailsBuilder_ == null
                ? sseDetails_
                : sseDetailsBuilder_.build();
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.creationTime_ = creationTime_;
            to_bitField0_ |= 0x00000020;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse.getDefaultInstance()) return this;
          if (other.hasTableMeta()) {
            mergeTableMeta(other.getTableMeta());
          }
          if (other.hasReservedThroughputDetails()) {
            mergeReservedThroughputDetails(other.getReservedThroughputDetails());
          }
          if (other.hasTableOptions()) {
            mergeTableOptions(other.getTableOptions());
          }
          if (other.hasStreamDetails()) {
            mergeStreamDetails(other.getStreamDetails());
          }
          if (!other.shardSplits_.isEmpty()) {
            if (shardSplits_.isEmpty()) {
              shardSplits_ = other.shardSplits_;
              shardSplits_.makeImmutable();
              bitField0_ |= 0x00000010;
            } else {
              ensureShardSplitsIsMutable();
              shardSplits_.addAll(other.shardSplits_);
            }
            onChanged();
          }
          if (other.hasSseDetails()) {
            mergeSseDetails(other.getSseDetails());
          }
          if (indexMetasBuilder_ == null) {
            if (!other.indexMetas_.isEmpty()) {
              if (indexMetas_.isEmpty()) {
                indexMetas_ = other.indexMetas_;
                bitField0_ = (bitField0_ & ~0x00000040);
              } else {
                ensureIndexMetasIsMutable();
                indexMetas_.addAll(other.indexMetas_);
              }
              onChanged();
            }
          } else {
            if (!other.indexMetas_.isEmpty()) {
              if (indexMetasBuilder_.isEmpty()) {
                indexMetasBuilder_.dispose();
                indexMetasBuilder_ = null;
                indexMetas_ = other.indexMetas_;
                bitField0_ = (bitField0_ & ~0x00000040);
                indexMetasBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getIndexMetasFieldBuilder() : null;
              } else {
                indexMetasBuilder_.addAllMessages(other.indexMetas_);
              }
            }
          }
          if (other.hasCreationTime()) {
            setCreationTime(other.getCreationTime());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableMeta()) {
            return false;
          }
          if (!hasReservedThroughputDetails()) {
            return false;
          }
          if (!hasTableOptions()) {
            return false;
          }
          if (!getTableMeta().isInitialized()) {
            return false;
          }
          if (!getReservedThroughputDetails().isInitialized()) {
            return false;
          }
          if (hasStreamDetails()) {
            if (!getStreamDetails().isInitialized()) {
              return false;
            }
          }
          if (hasSseDetails()) {
            if (!getSseDetails().isInitialized()) {
              return false;
            }
          }
          for (int i = 0; i < getIndexMetasCount(); i++) {
            if (!getIndexMetas(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getTableMetaFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getReservedThroughputDetailsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getTableOptionsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 42: {
                  input.readMessage(
                      getStreamDetailsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 42
                case 50: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString v = input.readBytes();
                  ensureShardSplitsIsMutable();
                  shardSplits_.add(v);
                  break;
                } // case 50
                case 58: {
                  input.readMessage(
                      getSseDetailsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000020;
                  break;
                } // case 58
                case 66: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.parser(),
                          extensionRegistry);
                  if (indexMetasBuilder_ == null) {
                    ensureIndexMetasIsMutable();
                    indexMetas_.add(m);
                  } else {
                    indexMetasBuilder_.addMessage(m);
                  }
                  break;
                } // case 66
                case 72: {
                  creationTime_ = input.readInt64();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 72
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta tableMeta_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder> tableMetaBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         * @return Whether the tableMeta field is set.
         */
        public boolean hasTableMeta() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         * @return The tableMeta.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta getTableMeta() {
          if (tableMetaBuilder_ == null) {
            return tableMeta_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
          } else {
            return tableMetaBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder setTableMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta value) {
          if (tableMetaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableMeta_ = value;
          } else {
            tableMetaBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder setTableMeta(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder builderForValue) {
          if (tableMetaBuilder_ == null) {
            tableMeta_ = builderForValue.build();
          } else {
            tableMetaBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder mergeTableMeta(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta value) {
          if (tableMetaBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              tableMeta_ != null &&
              tableMeta_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance()) {
              getTableMetaBuilder().mergeFrom(value);
            } else {
              tableMeta_ = value;
            }
          } else {
            tableMetaBuilder_.mergeFrom(value);
          }
          if (tableMeta_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public Builder clearTableMeta() {
          bitField0_ = (bitField0_ & ~0x00000001);
          tableMeta_ = null;
          if (tableMetaBuilder_ != null) {
            tableMetaBuilder_.dispose();
            tableMetaBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder getTableMetaBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getTableMetaFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder getTableMetaOrBuilder() {
          if (tableMetaBuilder_ != null) {
            return tableMetaBuilder_.getMessageOrBuilder();
          } else {
            return tableMeta_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.getDefaultInstance() : tableMeta_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableMeta table_meta = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder> 
            getTableMetaFieldBuilder() {
          if (tableMetaBuilder_ == null) {
            tableMetaBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableMetaOrBuilder>(
                    getTableMeta(),
                    getParentForChildren(),
                    isClean());
            tableMeta_ = null;
          }
          return tableMetaBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails reservedThroughputDetails_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder> reservedThroughputDetailsBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         * @return Whether the reservedThroughputDetails field is set.
         */
        public boolean hasReservedThroughputDetails() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         * @return The reservedThroughputDetails.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails getReservedThroughputDetails() {
          if (reservedThroughputDetailsBuilder_ == null) {
            return reservedThroughputDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
          } else {
            return reservedThroughputDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public Builder setReservedThroughputDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails value) {
          if (reservedThroughputDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            reservedThroughputDetails_ = value;
          } else {
            reservedThroughputDetailsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public Builder setReservedThroughputDetails(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder builderForValue) {
          if (reservedThroughputDetailsBuilder_ == null) {
            reservedThroughputDetails_ = builderForValue.build();
          } else {
            reservedThroughputDetailsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public Builder mergeReservedThroughputDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails value) {
          if (reservedThroughputDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              reservedThroughputDetails_ != null &&
              reservedThroughputDetails_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance()) {
              getReservedThroughputDetailsBuilder().mergeFrom(value);
            } else {
              reservedThroughputDetails_ = value;
            }
          } else {
            reservedThroughputDetailsBuilder_.mergeFrom(value);
          }
          if (reservedThroughputDetails_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public Builder clearReservedThroughputDetails() {
          bitField0_ = (bitField0_ & ~0x00000002);
          reservedThroughputDetails_ = null;
          if (reservedThroughputDetailsBuilder_ != null) {
            reservedThroughputDetailsBuilder_.dispose();
            reservedThroughputDetailsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder getReservedThroughputDetailsBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getReservedThroughputDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder getReservedThroughputDetailsOrBuilder() {
          if (reservedThroughputDetailsBuilder_ != null) {
            return reservedThroughputDetailsBuilder_.getMessageOrBuilder();
          } else {
            return reservedThroughputDetails_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.getDefaultInstance() : reservedThroughputDetails_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughputDetails reserved_throughput_details = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder> 
            getReservedThroughputDetailsFieldBuilder() {
          if (reservedThroughputDetailsBuilder_ == null) {
            reservedThroughputDetailsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputDetailsOrBuilder>(
                    getReservedThroughputDetails(),
                    getParentForChildren(),
                    isClean());
            reservedThroughputDetails_ = null;
          }
          return reservedThroughputDetailsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions tableOptions_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> tableOptionsBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return Whether the tableOptions field is set.
         */
        public boolean hasTableOptions() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         * @return The tableOptions.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions getTableOptions() {
          if (tableOptionsBuilder_ == null) {
            return tableOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          } else {
            return tableOptionsBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            tableOptions_ = value;
          } else {
            tableOptionsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder setTableOptions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder builderForValue) {
          if (tableOptionsBuilder_ == null) {
            tableOptions_ = builderForValue.build();
          } else {
            tableOptionsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder mergeTableOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions value) {
          if (tableOptionsBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              tableOptions_ != null &&
              tableOptions_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance()) {
              getTableOptionsBuilder().mergeFrom(value);
            } else {
              tableOptions_ = value;
            }
          } else {
            tableOptionsBuilder_.mergeFrom(value);
          }
          if (tableOptions_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public Builder clearTableOptions() {
          bitField0_ = (bitField0_ & ~0x00000004);
          tableOptions_ = null;
          if (tableOptionsBuilder_ != null) {
            tableOptionsBuilder_.dispose();
            tableOptionsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder getTableOptionsBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getTableOptionsFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder getTableOptionsOrBuilder() {
          if (tableOptionsBuilder_ != null) {
            return tableOptionsBuilder_.getMessageOrBuilder();
          } else {
            return tableOptions_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.getDefaultInstance() : tableOptions_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.TableOptions table_options = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder> 
            getTableOptionsFieldBuilder() {
          if (tableOptionsBuilder_ == null) {
            tableOptionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableOptionsOrBuilder>(
                    getTableOptions(),
                    getParentForChildren(),
                    isClean());
            tableOptions_ = null;
          }
          return tableOptionsBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails streamDetails_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder> streamDetailsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         * @return Whether the streamDetails field is set.
         */
        public boolean hasStreamDetails() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         * @return The streamDetails.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails getStreamDetails() {
          if (streamDetailsBuilder_ == null) {
            return streamDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
          } else {
            return streamDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public Builder setStreamDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails value) {
          if (streamDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            streamDetails_ = value;
          } else {
            streamDetailsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public Builder setStreamDetails(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder builderForValue) {
          if (streamDetailsBuilder_ == null) {
            streamDetails_ = builderForValue.build();
          } else {
            streamDetailsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public Builder mergeStreamDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails value) {
          if (streamDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              streamDetails_ != null &&
              streamDetails_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance()) {
              getStreamDetailsBuilder().mergeFrom(value);
            } else {
              streamDetails_ = value;
            }
          } else {
            streamDetailsBuilder_.mergeFrom(value);
          }
          if (streamDetails_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public Builder clearStreamDetails() {
          bitField0_ = (bitField0_ & ~0x00000008);
          streamDetails_ = null;
          if (streamDetailsBuilder_ != null) {
            streamDetailsBuilder_.dispose();
            streamDetailsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder getStreamDetailsBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getStreamDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder getStreamDetailsOrBuilder() {
          if (streamDetailsBuilder_ != null) {
            return streamDetailsBuilder_.getMessageOrBuilder();
          } else {
            return streamDetails_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.getDefaultInstance() : streamDetails_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.StreamDetails stream_details = 5;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder> 
            getStreamDetailsFieldBuilder() {
          if (streamDetailsBuilder_ == null) {
            streamDetailsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamDetailsOrBuilder>(
                    getStreamDetails(),
                    getParentForChildren(),
                    isClean());
            streamDetails_ = null;
          }
          return streamDetailsBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> shardSplits_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        private void ensureShardSplitsIsMutable() {
          if (!shardSplits_.isModifiable()) {
            shardSplits_ = makeMutableCopy(shardSplits_);
          }
          bitField0_ |= 0x00000010;
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @return A list containing the shardSplits.
         */
        public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
            getShardSplitsList() {
          shardSplits_.makeImmutable();
          return shardSplits_;
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @return The count of shardSplits.
         */
        public int getShardSplitsCount() {
          return shardSplits_.size();
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @param index The index of the element to return.
         * @return The shardSplits at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getShardSplits(int index) {
          return shardSplits_.get(index);
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @param index The index to set the value at.
         * @param value The shardSplits to set.
         * @return This builder for chaining.
         */
        public Builder setShardSplits(
            int index, com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureShardSplitsIsMutable();
          shardSplits_.set(index, value);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @param value The shardSplits to add.
         * @return This builder for chaining.
         */
        public Builder addShardSplits(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureShardSplitsIsMutable();
          shardSplits_.add(value);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @param values The shardSplits to add.
         * @return This builder for chaining.
         */
        public Builder addAllShardSplits(
            java.lang.Iterable<? extends com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> values) {
          ensureShardSplitsIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, shardSplits_);
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes shard_splits = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardSplits() {
          shardSplits_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails sseDetails_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder> sseDetailsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         * @return Whether the sseDetails field is set.
         */
        public boolean hasSseDetails() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         * @return The sseDetails.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails getSseDetails() {
          if (sseDetailsBuilder_ == null) {
            return sseDetails_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance() : sseDetails_;
          } else {
            return sseDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public Builder setSseDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails value) {
          if (sseDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            sseDetails_ = value;
          } else {
            sseDetailsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public Builder setSseDetails(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder builderForValue) {
          if (sseDetailsBuilder_ == null) {
            sseDetails_ = builderForValue.build();
          } else {
            sseDetailsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public Builder mergeSseDetails(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails value) {
          if (sseDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000020) != 0) &&
              sseDetails_ != null &&
              sseDetails_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance()) {
              getSseDetailsBuilder().mergeFrom(value);
            } else {
              sseDetails_ = value;
            }
          } else {
            sseDetailsBuilder_.mergeFrom(value);
          }
          if (sseDetails_ != null) {
            bitField0_ |= 0x00000020;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public Builder clearSseDetails() {
          bitField0_ = (bitField0_ & ~0x00000020);
          sseDetails_ = null;
          if (sseDetailsBuilder_ != null) {
            sseDetailsBuilder_.dispose();
            sseDetailsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder getSseDetailsBuilder() {
          bitField0_ |= 0x00000020;
          onChanged();
          return getSseDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder getSseDetailsOrBuilder() {
          if (sseDetailsBuilder_ != null) {
            return sseDetailsBuilder_.getMessageOrBuilder();
          } else {
            return sseDetails_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.getDefaultInstance() : sseDetails_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SSEDetails sse_details = 7;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder> 
            getSseDetailsFieldBuilder() {
          if (sseDetailsBuilder_ == null) {
            sseDetailsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetails.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SSEDetailsOrBuilder>(
                    getSseDetails(),
                    getParentForChildren(),
                    isClean());
            sseDetails_ = null;
          }
          return sseDetailsBuilder_;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> indexMetas_ =
          java.util.Collections.emptyList();
        private void ensureIndexMetasIsMutable() {
          if (!((bitField0_ & 0x00000040) != 0)) {
            indexMetas_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta>(indexMetas_);
            bitField0_ |= 0x00000040;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> indexMetasBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> getIndexMetasList() {
          if (indexMetasBuilder_ == null) {
            return java.util.Collections.unmodifiableList(indexMetas_);
          } else {
            return indexMetasBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public int getIndexMetasCount() {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.size();
          } else {
            return indexMetasBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta getIndexMetas(int index) {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.get(index);
          } else {
            return indexMetasBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder setIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.set(index, value);
            onChanged();
          } else {
            indexMetasBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder setIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.set(index, builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder addIndexMetas(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.add(value);
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder addIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta value) {
          if (indexMetasBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureIndexMetasIsMutable();
            indexMetas_.add(index, value);
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder addIndexMetas(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.add(builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder addIndexMetas(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder builderForValue) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.add(index, builderForValue.build());
            onChanged();
          } else {
            indexMetasBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder addAllIndexMetas(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta> values) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, indexMetas_);
            onChanged();
          } else {
            indexMetasBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder clearIndexMetas() {
          if (indexMetasBuilder_ == null) {
            indexMetas_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000040);
            onChanged();
          } else {
            indexMetasBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public Builder removeIndexMetas(int index) {
          if (indexMetasBuilder_ == null) {
            ensureIndexMetasIsMutable();
            indexMetas_.remove(index);
            onChanged();
          } else {
            indexMetasBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder getIndexMetasBuilder(
            int index) {
          return getIndexMetasFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder getIndexMetasOrBuilder(
            int index) {
          if (indexMetasBuilder_ == null) {
            return indexMetas_.get(index);  } else {
            return indexMetasBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
             getIndexMetasOrBuilderList() {
          if (indexMetasBuilder_ != null) {
            return indexMetasBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(indexMetas_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder addIndexMetasBuilder() {
          return getIndexMetasFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder addIndexMetasBuilder(
            int index) {
          return getIndexMetasFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.IndexMeta index_metas = 8;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder> 
             getIndexMetasBuilderList() {
          return getIndexMetasFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder> 
            getIndexMetasFieldBuilder() {
          if (indexMetasBuilder_ == null) {
            indexMetasBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMeta.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.IndexMetaOrBuilder>(
                    indexMetas_,
                    ((bitField0_ & 0x00000040) != 0),
                    getParentForChildren(),
                    isClean());
            indexMetas_ = null;
          }
          return indexMetasBuilder_;
        }
  
        private long creationTime_ ;
        /**
         * <code>optional int64 creation_time = 9;</code>
         * @return Whether the creationTime field is set.
         */
        @java.lang.Override
        public boolean hasCreationTime() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>optional int64 creation_time = 9;</code>
         * @return The creationTime.
         */
        @java.lang.Override
        public long getCreationTime() {
          return creationTime_;
        }
        /**
         * <code>optional int64 creation_time = 9;</code>
         * @param value The creationTime to set.
         * @return This builder for chaining.
         */
        public Builder setCreationTime(long value) {
  
          creationTime_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 creation_time = 9;</code>
         * @return This builder for chaining.
         */
        public Builder clearCreationTime() {
          bitField0_ = (bitField0_ & ~0x00000080);
          creationTime_ = 0L;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DescribeTableResponse>() {
        @java.lang.Override
        public DescribeTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ListTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ListTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListTableRequest}
     */
    public static final class ListTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ListTableRequest)
        ListTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ListTableRequest.class.getName());
      }
      // Use ListTableRequest.newBuilder() to construct.
      private ListTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ListTableRequest() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ListTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ListTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ListTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ListTableRequest>() {
        @java.lang.Override
        public ListTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ListTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ListTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string table_names = 1;</code>
       * @return A list containing the tableNames.
       */
      java.util.List<java.lang.String>
          getTableNamesList();
      /**
       * <code>repeated string table_names = 1;</code>
       * @return The count of tableNames.
       */
      int getTableNamesCount();
      /**
       * <code>repeated string table_names = 1;</code>
       * @param index The index of the element to return.
       * @return The tableNames at the given index.
       */
      java.lang.String getTableNames(int index);
      /**
       * <code>repeated string table_names = 1;</code>
       * @param index The index of the value to return.
       * @return The bytes of the tableNames at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNamesBytes(int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListTableResponse}
     */
    public static final class ListTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ListTableResponse)
        ListTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ListTableResponse.class.getName());
      }
      // Use ListTableResponse.newBuilder() to construct.
      private ListTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ListTableResponse() {
        tableNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.Builder.class);
      }
  
      public static final int TABLE_NAMES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList tableNames_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string table_names = 1;</code>
       * @return A list containing the tableNames.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getTableNamesList() {
        return tableNames_;
      }
      /**
       * <code>repeated string table_names = 1;</code>
       * @return The count of tableNames.
       */
      public int getTableNamesCount() {
        return tableNames_.size();
      }
      /**
       * <code>repeated string table_names = 1;</code>
       * @param index The index of the element to return.
       * @return The tableNames at the given index.
       */
      public java.lang.String getTableNames(int index) {
        return tableNames_.get(index);
      }
      /**
       * <code>repeated string table_names = 1;</code>
       * @param index The index of the value to return.
       * @return The bytes of the tableNames at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNamesBytes(int index) {
        return tableNames_.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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tableNames_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableNames_.getRaw(i));
        }
        getUnknownFields().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 < tableNames_.size(); i++) {
            dataSize += computeStringSizeNoTag(tableNames_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getTableNamesList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse) obj;
  
        if (!getTableNamesList()
            .equals(other.getTableNamesList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTableNamesCount() > 0) {
          hash = (37 * hash) + TABLE_NAMES_FIELD_NUMBER;
          hash = (53 * hash) + getTableNamesList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ListTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableNames_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse result) {
          int from_bitField0_ = bitField0_;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            tableNames_.makeImmutable();
            result.tableNames_ = tableNames_;
          }
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse.getDefaultInstance()) return this;
          if (!other.tableNames_.isEmpty()) {
            if (tableNames_.isEmpty()) {
              tableNames_ = other.tableNames_;
              bitField0_ |= 0x00000001;
            } else {
              ensureTableNamesIsMutable();
              tableNames_.addAll(other.tableNames_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureTableNamesIsMutable();
                  tableNames_.add(bs);
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList tableNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureTableNamesIsMutable() {
          if (!tableNames_.isModifiable()) {
            tableNames_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(tableNames_);
          }
          bitField0_ |= 0x00000001;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @return A list containing the tableNames.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getTableNamesList() {
          tableNames_.makeImmutable();
          return tableNames_;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @return The count of tableNames.
         */
        public int getTableNamesCount() {
          return tableNames_.size();
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param index The index of the element to return.
         * @return The tableNames at the given index.
         */
        public java.lang.String getTableNames(int index) {
          return tableNames_.get(index);
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param index The index of the value to return.
         * @return The bytes of the tableNames at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNamesBytes(int index) {
          return tableNames_.getByteString(index);
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param index The index to set the value at.
         * @param value The tableNames to set.
         * @return This builder for chaining.
         */
        public Builder setTableNames(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureTableNamesIsMutable();
          tableNames_.set(index, value);
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param value The tableNames to add.
         * @return This builder for chaining.
         */
        public Builder addTableNames(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureTableNamesIsMutable();
          tableNames_.add(value);
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param values The tableNames to add.
         * @return This builder for chaining.
         */
        public Builder addAllTableNames(
            java.lang.Iterable<java.lang.String> values) {
          ensureTableNamesIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, tableNames_);
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableNames() {
          tableNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string table_names = 1;</code>
         * @param value The bytes of the tableNames to add.
         * @return This builder for chaining.
         */
        public Builder addTableNamesBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureTableNamesIsMutable();
          tableNames_.add(value);
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ListTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ListTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ListTableResponse>() {
        @java.lang.Override
        public ListTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest}
     */
    public static final class DeleteTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest)
        DeleteTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteTableRequest.class.getName());
      }
      // Use DeleteTableRequest.newBuilder() to construct.
      private DeleteTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteTableRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteTableRequest>() {
        @java.lang.Override
        public DeleteTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse}
     */
    public static final class DeleteTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse)
        DeleteTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteTableResponse.class.getName());
      }
      // Use DeleteTableResponse.newBuilder() to construct.
      private DeleteTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteTableResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteTableResponse>() {
        @java.lang.Override
        public DeleteTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface LoadTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest}
     */
    public static final class LoadTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest)
        LoadTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          LoadTableRequest.class.getName());
      }
      // Use LoadTableRequest.newBuilder() to construct.
      private LoadTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private LoadTableRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.LoadTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<LoadTableRequest>() {
        @java.lang.Override
        public LoadTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface LoadTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse}
     */
    public static final class LoadTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse)
        LoadTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          LoadTableResponse.class.getName());
      }
      // Use LoadTableResponse.newBuilder() to construct.
      private LoadTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private LoadTableResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.LoadTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<LoadTableResponse>() {
        @java.lang.Override
        public LoadTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<LoadTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.LoadTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UnloadTableRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest}
     */
    public static final class UnloadTableRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest)
        UnloadTableRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UnloadTableRequest.class.getName());
      }
      // Use UnloadTableRequest.newBuilder() to construct.
      private UnloadTableRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UnloadTableRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UnloadTableRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UnloadTableRequest>() {
        @java.lang.Override
        public UnloadTableRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UnloadTableResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse}
     */
    public static final class UnloadTableResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse)
        UnloadTableResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UnloadTableResponse.class.getName());
      }
      // Use UnloadTableResponse.newBuilder() to construct.
      private UnloadTableResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UnloadTableResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UnloadTableResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UnloadTableResponse>() {
        @java.lang.Override
        public UnloadTableResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UnloadTableResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UnloadTableResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TimeRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TimeRange)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional int64 start_time = 1;</code>
       * @return Whether the startTime field is set.
       */
      boolean hasStartTime();
      /**
       * <code>optional int64 start_time = 1;</code>
       * @return The startTime.
       */
      long getStartTime();
  
      /**
       * <code>optional int64 end_time = 2;</code>
       * @return Whether the endTime field is set.
       */
      boolean hasEndTime();
      /**
       * <code>optional int64 end_time = 2;</code>
       * @return The endTime.
       */
      long getEndTime();
  
      /**
       * <code>optional int64 specific_time = 3;</code>
       * @return Whether the specificTime field is set.
       */
      boolean hasSpecificTime();
      /**
       * <code>optional int64 specific_time = 3;</code>
       * @return The specificTime.
       */
      long getSpecificTime();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TimeRange}
     */
    public static final class TimeRange extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TimeRange)
        TimeRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TimeRange.class.getName());
      }
      // Use TimeRange.newBuilder() to construct.
      private TimeRange(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TimeRange() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder.class);
      }
  
      private int bitField0_;
      public static final int START_TIME_FIELD_NUMBER = 1;
      private long startTime_ = 0L;
      /**
       * <code>optional int64 start_time = 1;</code>
       * @return Whether the startTime field is set.
       */
      @java.lang.Override
      public boolean hasStartTime() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional int64 start_time = 1;</code>
       * @return The startTime.
       */
      @java.lang.Override
      public long getStartTime() {
        return startTime_;
      }
  
      public static final int END_TIME_FIELD_NUMBER = 2;
      private long endTime_ = 0L;
      /**
       * <code>optional int64 end_time = 2;</code>
       * @return Whether the endTime field is set.
       */
      @java.lang.Override
      public boolean hasEndTime() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int64 end_time = 2;</code>
       * @return The endTime.
       */
      @java.lang.Override
      public long getEndTime() {
        return endTime_;
      }
  
      public static final int SPECIFIC_TIME_FIELD_NUMBER = 3;
      private long specificTime_ = 0L;
      /**
       * <code>optional int64 specific_time = 3;</code>
       * @return Whether the specificTime field is set.
       */
      @java.lang.Override
      public boolean hasSpecificTime() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 specific_time = 3;</code>
       * @return The specificTime.
       */
      @java.lang.Override
      public long getSpecificTime() {
        return specificTime_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeInt64(1, startTime_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt64(2, endTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, specificTime_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(1, startTime_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(2, endTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, specificTime_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange) obj;
  
        if (hasStartTime() != other.hasStartTime()) return false;
        if (hasStartTime()) {
          if (getStartTime()
              != other.getStartTime()) return false;
        }
        if (hasEndTime() != other.hasEndTime()) return false;
        if (hasEndTime()) {
          if (getEndTime()
              != other.getEndTime()) return false;
        }
        if (hasSpecificTime() != other.hasSpecificTime()) return false;
        if (hasSpecificTime()) {
          if (getSpecificTime()
              != other.getSpecificTime()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasStartTime()) {
          hash = (37 * hash) + START_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getStartTime());
        }
        if (hasEndTime()) {
          hash = (37 * hash) + END_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getEndTime());
        }
        if (hasSpecificTime()) {
          hash = (37 * hash) + SPECIFIC_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getSpecificTime());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TimeRange}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TimeRange)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          startTime_ = 0L;
          endTime_ = 0L;
          specificTime_ = 0L;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.startTime_ = startTime_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.endTime_ = endTime_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.specificTime_ = specificTime_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance()) return this;
          if (other.hasStartTime()) {
            setStartTime(other.getStartTime());
          }
          if (other.hasEndTime()) {
            setEndTime(other.getEndTime());
          }
          if (other.hasSpecificTime()) {
            setSpecificTime(other.getSpecificTime());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  startTime_ = input.readInt64();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 16: {
                  endTime_ = input.readInt64();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 24: {
                  specificTime_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private long startTime_ ;
        /**
         * <code>optional int64 start_time = 1;</code>
         * @return Whether the startTime field is set.
         */
        @java.lang.Override
        public boolean hasStartTime() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional int64 start_time = 1;</code>
         * @return The startTime.
         */
        @java.lang.Override
        public long getStartTime() {
          return startTime_;
        }
        /**
         * <code>optional int64 start_time = 1;</code>
         * @param value The startTime to set.
         * @return This builder for chaining.
         */
        public Builder setStartTime(long value) {
  
          startTime_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 start_time = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearStartTime() {
          bitField0_ = (bitField0_ & ~0x00000001);
          startTime_ = 0L;
          onChanged();
          return this;
        }
  
        private long endTime_ ;
        /**
         * <code>optional int64 end_time = 2;</code>
         * @return Whether the endTime field is set.
         */
        @java.lang.Override
        public boolean hasEndTime() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int64 end_time = 2;</code>
         * @return The endTime.
         */
        @java.lang.Override
        public long getEndTime() {
          return endTime_;
        }
        /**
         * <code>optional int64 end_time = 2;</code>
         * @param value The endTime to set.
         * @return This builder for chaining.
         */
        public Builder setEndTime(long value) {
  
          endTime_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 end_time = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearEndTime() {
          bitField0_ = (bitField0_ & ~0x00000002);
          endTime_ = 0L;
          onChanged();
          return this;
        }
  
        private long specificTime_ ;
        /**
         * <code>optional int64 specific_time = 3;</code>
         * @return Whether the specificTime field is set.
         */
        @java.lang.Override
        public boolean hasSpecificTime() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 specific_time = 3;</code>
         * @return The specificTime.
         */
        @java.lang.Override
        public long getSpecificTime() {
          return specificTime_;
        }
        /**
         * <code>optional int64 specific_time = 3;</code>
         * @param value The specificTime to set.
         * @return This builder for chaining.
         */
        public Builder setSpecificTime(long value) {
  
          specificTime_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 specific_time = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearSpecificTime() {
          bitField0_ = (bitField0_ & ~0x00000004);
          specificTime_ = 0L;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TimeRange)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TimeRange)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TimeRange>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TimeRange>() {
        @java.lang.Override
        public TimeRange parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TimeRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TimeRange> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ReturnContentOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ReturnContent)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
       * @return Whether the returnType field is set.
       */
      boolean hasReturnType();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
       * @return The returnType.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType getReturnType();
  
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @return A list containing the returnColumnNames.
       */
      java.util.List<java.lang.String>
          getReturnColumnNamesList();
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @return The count of returnColumnNames.
       */
      int getReturnColumnNamesCount();
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @param index The index of the element to return.
       * @return The returnColumnNames at the given index.
       */
      java.lang.String getReturnColumnNames(int index);
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the returnColumnNames at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getReturnColumnNamesBytes(int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReturnContent}
     */
    public static final class ReturnContent extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ReturnContent)
        ReturnContentOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ReturnContent.class.getName());
      }
      // Use ReturnContent.newBuilder() to construct.
      private ReturnContent(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ReturnContent() {
        returnType_ = 0;
        returnColumnNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder.class);
      }
  
      private int bitField0_;
      public static final int RETURN_TYPE_FIELD_NUMBER = 1;
      private int returnType_ = 0;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
       * @return Whether the returnType field is set.
       */
      @java.lang.Override public boolean hasReturnType() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
       * @return The returnType.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType getReturnType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType.forNumber(returnType_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType.RT_NONE : result;
      }
  
      public static final int RETURN_COLUMN_NAMES_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList returnColumnNames_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @return A list containing the returnColumnNames.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getReturnColumnNamesList() {
        return returnColumnNames_;
      }
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @return The count of returnColumnNames.
       */
      public int getReturnColumnNamesCount() {
        return returnColumnNames_.size();
      }
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @param index The index of the element to return.
       * @return The returnColumnNames at the given index.
       */
      public java.lang.String getReturnColumnNames(int index) {
        return returnColumnNames_.get(index);
      }
      /**
       * <code>repeated string return_column_names = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the returnColumnNames at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getReturnColumnNamesBytes(int index) {
        return returnColumnNames_.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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeEnum(1, returnType_);
        }
        for (int i = 0; i < returnColumnNames_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, returnColumnNames_.getRaw(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, returnType_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < returnColumnNames_.size(); i++) {
            dataSize += computeStringSizeNoTag(returnColumnNames_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getReturnColumnNamesList().size();
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent) obj;
  
        if (hasReturnType() != other.hasReturnType()) return false;
        if (hasReturnType()) {
          if (returnType_ != other.returnType_) return false;
        }
        if (!getReturnColumnNamesList()
            .equals(other.getReturnColumnNamesList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasReturnType()) {
          hash = (37 * hash) + RETURN_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + returnType_;
        }
        if (getReturnColumnNamesCount() > 0) {
          hash = (37 * hash) + RETURN_COLUMN_NAMES_FIELD_NUMBER;
          hash = (53 * hash) + getReturnColumnNamesList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ReturnContent}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ReturnContent)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          returnType_ = 0;
          returnColumnNames_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.returnType_ = returnType_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            returnColumnNames_.makeImmutable();
            result.returnColumnNames_ = returnColumnNames_;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance()) return this;
          if (other.hasReturnType()) {
            setReturnType(other.getReturnType());
          }
          if (!other.returnColumnNames_.isEmpty()) {
            if (returnColumnNames_.isEmpty()) {
              returnColumnNames_ = other.returnColumnNames_;
              bitField0_ |= 0x00000002;
            } else {
              ensureReturnColumnNamesIsMutable();
              returnColumnNames_.addAll(other.returnColumnNames_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(1, tmpRaw);
                  } else {
                    returnType_ = tmpRaw;
                    bitField0_ |= 0x00000001;
                  }
                  break;
                } // case 8
                case 18: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureReturnColumnNamesIsMutable();
                  returnColumnNames_.add(bs);
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int returnType_ = 0;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
         * @return Whether the returnType field is set.
         */
        @java.lang.Override public boolean hasReturnType() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
         * @return The returnType.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType getReturnType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType.forNumber(returnType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType.RT_NONE : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
         * @param value The returnType to set.
         * @return This builder for chaining.
         */
        public Builder setReturnType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          returnType_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnType return_type = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearReturnType() {
          bitField0_ = (bitField0_ & ~0x00000001);
          returnType_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList returnColumnNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureReturnColumnNamesIsMutable() {
          if (!returnColumnNames_.isModifiable()) {
            returnColumnNames_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(returnColumnNames_);
          }
          bitField0_ |= 0x00000002;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @return A list containing the returnColumnNames.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getReturnColumnNamesList() {
          returnColumnNames_.makeImmutable();
          return returnColumnNames_;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @return The count of returnColumnNames.
         */
        public int getReturnColumnNamesCount() {
          return returnColumnNames_.size();
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param index The index of the element to return.
         * @return The returnColumnNames at the given index.
         */
        public java.lang.String getReturnColumnNames(int index) {
          return returnColumnNames_.get(index);
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param index The index of the value to return.
         * @return The bytes of the returnColumnNames at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getReturnColumnNamesBytes(int index) {
          return returnColumnNames_.getByteString(index);
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param index The index to set the value at.
         * @param value The returnColumnNames to set.
         * @return This builder for chaining.
         */
        public Builder setReturnColumnNames(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureReturnColumnNamesIsMutable();
          returnColumnNames_.set(index, value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param value The returnColumnNames to add.
         * @return This builder for chaining.
         */
        public Builder addReturnColumnNames(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureReturnColumnNamesIsMutable();
          returnColumnNames_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param values The returnColumnNames to add.
         * @return This builder for chaining.
         */
        public Builder addAllReturnColumnNames(
            java.lang.Iterable<java.lang.String> values) {
          ensureReturnColumnNamesIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, returnColumnNames_);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearReturnColumnNames() {
          returnColumnNames_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string return_column_names = 2;</code>
         * @param value The bytes of the returnColumnNames to add.
         * @return This builder for chaining.
         */
        public Builder addReturnColumnNamesBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureReturnColumnNamesIsMutable();
          returnColumnNames_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ReturnContent)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ReturnContent)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReturnContent>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ReturnContent>() {
        @java.lang.Override
        public ReturnContent parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReturnContent> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ReturnContent> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return Whether the primaryKey field is set.
       */
      boolean hasPrimaryKey();
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return The primaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey();
  
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      java.util.List<java.lang.String>
          getColumnsToGetList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      int getColumnsToGetCount();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      java.lang.String getColumnsToGet(int index);
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index);
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return Whether the timeRange field is set.
       */
      boolean hasTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return The timeRange.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder();
  
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return Whether the maxVersions field is set.
       */
      boolean hasMaxVersions();
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return The maxVersions.
       */
      int getMaxVersions();
  
      /**
       * <code>optional bytes filter = 7;</code>
       * @return Whether the filter field is set.
       */
      boolean hasFilter();
      /**
       * <code>optional bytes filter = 7;</code>
       * @return The filter.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter();
  
      /**
       * <code>optional string start_column = 8;</code>
       * @return Whether the startColumn field is set.
       */
      boolean hasStartColumn();
      /**
       * <code>optional string start_column = 8;</code>
       * @return The startColumn.
       */
      java.lang.String getStartColumn();
      /**
       * <code>optional string start_column = 8;</code>
       * @return The bytes for startColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes();
  
      /**
       * <code>optional string end_column = 9;</code>
       * @return Whether the endColumn field is set.
       */
      boolean hasEndColumn();
      /**
       * <code>optional string end_column = 9;</code>
       * @return The endColumn.
       */
      java.lang.String getEndColumn();
      /**
       * <code>optional string end_column = 9;</code>
       * @return The bytes for endColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes();
  
      /**
       * <code>optional bytes token = 10;</code>
       * @return Whether the token field is set.
       */
      boolean hasToken();
      /**
       * <code>optional bytes token = 10;</code>
       * @return The token.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken();
  
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRowRequest}
     */
    public static final class GetRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetRowRequest)
        GetRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetRowRequest.class.getName());
      }
      // Use GetRowRequest.newBuilder() to construct.
      private GetRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetRowRequest() {
        tableName_ = "";
        primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        startColumn_ = "";
        endColumn_ = "";
        token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PRIMARY_KEY_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return Whether the primaryKey field is set.
       */
      @java.lang.Override
      public boolean hasPrimaryKey() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return The primaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey() {
        return primaryKey_;
      }
  
      public static final int COLUMNS_TO_GET_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsToGetList() {
        return columnsToGet_;
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      public int getColumnsToGetCount() {
        return columnsToGet_.size();
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      public java.lang.String getColumnsToGet(int index) {
        return columnsToGet_.get(index);
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index) {
        return columnsToGet_.getByteString(index);
      }
  
      public static final int TIME_RANGE_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return Whether the timeRange field is set.
       */
      @java.lang.Override
      public boolean hasTimeRange() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return The timeRange.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
  
      public static final int MAX_VERSIONS_FIELD_NUMBER = 5;
      private int maxVersions_ = 0;
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return Whether the maxVersions field is set.
       */
      @java.lang.Override
      public boolean hasMaxVersions() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return The maxVersions.
       */
      @java.lang.Override
      public int getMaxVersions() {
        return maxVersions_;
      }
  
      public static final int FILTER_FIELD_NUMBER = 7;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes filter = 7;</code>
       * @return Whether the filter field is set.
       */
      @java.lang.Override
      public boolean hasFilter() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional bytes filter = 7;</code>
       * @return The filter.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
        return filter_;
      }
  
      public static final int START_COLUMN_FIELD_NUMBER = 8;
      @SuppressWarnings("serial")
      private volatile java.lang.Object startColumn_ = "";
      /**
       * <code>optional string start_column = 8;</code>
       * @return Whether the startColumn field is set.
       */
      @java.lang.Override
      public boolean hasStartColumn() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional string start_column = 8;</code>
       * @return The startColumn.
       */
      @java.lang.Override
      public java.lang.String getStartColumn() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            startColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string start_column = 8;</code>
       * @return The bytes for startColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          startColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int END_COLUMN_FIELD_NUMBER = 9;
      @SuppressWarnings("serial")
      private volatile java.lang.Object endColumn_ = "";
      /**
       * <code>optional string end_column = 9;</code>
       * @return Whether the endColumn field is set.
       */
      @java.lang.Override
      public boolean hasEndColumn() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <code>optional string end_column = 9;</code>
       * @return The endColumn.
       */
      @java.lang.Override
      public java.lang.String getEndColumn() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            endColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string end_column = 9;</code>
       * @return The bytes for endColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          endColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TOKEN_FIELD_NUMBER = 10;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes token = 10;</code>
       * @return Whether the token field is set.
       */
      @java.lang.Override
      public boolean hasToken() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <code>optional bytes token = 10;</code>
       * @return The token.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken() {
        return token_;
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 11;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 11;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, primaryKey_);
        }
        for (int i = 0; i < columnsToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, columnsToGet_.getRaw(i));
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(4, getTimeRange());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeInt32(5, maxVersions_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeBytes(7, filter_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 8, startColumn_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 9, endColumn_);
        }
        if (((bitField0_ & 0x00000080) != 0)) {
          output.writeBytes(10, token_);
        }
        if (((bitField0_ & 0x00000100) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 11, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, primaryKey_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnsToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnsToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsToGetList().size();
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getTimeRange());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(5, maxVersions_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, filter_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(8, startColumn_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(9, endColumn_);
        }
        if (((bitField0_ & 0x00000080) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, token_);
        }
        if (((bitField0_ & 0x00000100) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(11, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasPrimaryKey() != other.hasPrimaryKey()) return false;
        if (hasPrimaryKey()) {
          if (!getPrimaryKey()
              .equals(other.getPrimaryKey())) return false;
        }
        if (!getColumnsToGetList()
            .equals(other.getColumnsToGetList())) return false;
        if (hasTimeRange() != other.hasTimeRange()) return false;
        if (hasTimeRange()) {
          if (!getTimeRange()
              .equals(other.getTimeRange())) return false;
        }
        if (hasMaxVersions() != other.hasMaxVersions()) return false;
        if (hasMaxVersions()) {
          if (getMaxVersions()
              != other.getMaxVersions()) return false;
        }
        if (hasFilter() != other.hasFilter()) return false;
        if (hasFilter()) {
          if (!getFilter()
              .equals(other.getFilter())) return false;
        }
        if (hasStartColumn() != other.hasStartColumn()) return false;
        if (hasStartColumn()) {
          if (!getStartColumn()
              .equals(other.getStartColumn())) return false;
        }
        if (hasEndColumn() != other.hasEndColumn()) return false;
        if (hasEndColumn()) {
          if (!getEndColumn()
              .equals(other.getEndColumn())) return false;
        }
        if (hasToken() != other.hasToken()) return false;
        if (hasToken()) {
          if (!getToken()
              .equals(other.getToken())) return false;
        }
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasPrimaryKey()) {
          hash = (37 * hash) + PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrimaryKey().hashCode();
        }
        if (getColumnsToGetCount() > 0) {
          hash = (37 * hash) + COLUMNS_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsToGetList().hashCode();
        }
        if (hasTimeRange()) {
          hash = (37 * hash) + TIME_RANGE_FIELD_NUMBER;
          hash = (53 * hash) + getTimeRange().hashCode();
        }
        if (hasMaxVersions()) {
          hash = (37 * hash) + MAX_VERSIONS_FIELD_NUMBER;
          hash = (53 * hash) + getMaxVersions();
        }
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        if (hasStartColumn()) {
          hash = (37 * hash) + START_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getStartColumn().hashCode();
        }
        if (hasEndColumn()) {
          hash = (37 * hash) + END_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getEndColumn().hashCode();
        }
        if (hasToken()) {
          hash = (37 * hash) + TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getToken().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getTimeRangeFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          columnsToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          maxVersions_ = 0;
          filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          startColumn_ = "";
          endColumn_ = "";
          token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.primaryKey_ = primaryKey_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            columnsToGet_.makeImmutable();
            result.columnsToGet_ = columnsToGet_;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.timeRange_ = timeRangeBuilder_ == null
                ? timeRange_
                : timeRangeBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.maxVersions_ = maxVersions_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.filter_ = filter_;
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000040) != 0)) {
            result.startColumn_ = startColumn_;
            to_bitField0_ |= 0x00000020;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.endColumn_ = endColumn_;
            to_bitField0_ |= 0x00000040;
          }
          if (((from_bitField0_ & 0x00000100) != 0)) {
            result.token_ = token_;
            to_bitField0_ |= 0x00000080;
          }
          if (((from_bitField0_ & 0x00000200) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000100;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasPrimaryKey()) {
            setPrimaryKey(other.getPrimaryKey());
          }
          if (!other.columnsToGet_.isEmpty()) {
            if (columnsToGet_.isEmpty()) {
              columnsToGet_ = other.columnsToGet_;
              bitField0_ |= 0x00000004;
            } else {
              ensureColumnsToGetIsMutable();
              columnsToGet_.addAll(other.columnsToGet_);
            }
            onChanged();
          }
          if (other.hasTimeRange()) {
            mergeTimeRange(other.getTimeRange());
          }
          if (other.hasMaxVersions()) {
            setMaxVersions(other.getMaxVersions());
          }
          if (other.hasFilter()) {
            setFilter(other.getFilter());
          }
          if (other.hasStartColumn()) {
            startColumn_ = other.startColumn_;
            bitField0_ |= 0x00000040;
            onChanged();
          }
          if (other.hasEndColumn()) {
            endColumn_ = other.endColumn_;
            bitField0_ |= 0x00000080;
            onChanged();
          }
          if (other.hasToken()) {
            setToken(other.getToken());
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000200;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasPrimaryKey()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  primaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsToGetIsMutable();
                  columnsToGet_.add(bs);
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getTimeRangeFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 40: {
                  maxVersions_ = input.readInt32();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 40
                case 58: {
                  filter_ = input.readBytes();
                  bitField0_ |= 0x00000020;
                  break;
                } // case 58
                case 66: {
                  startColumn_ = input.readBytes();
                  bitField0_ |= 0x00000040;
                  break;
                } // case 66
                case 74: {
                  endColumn_ = input.readBytes();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 74
                case 82: {
                  token_ = input.readBytes();
                  bitField0_ |= 0x00000100;
                  break;
                } // case 82
                case 90: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000200;
                  break;
                } // case 90
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return Whether the primaryKey field is set.
         */
        @java.lang.Override
        public boolean hasPrimaryKey() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return The primaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey() {
          return primaryKey_;
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @param value The primaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          primaryKey_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000002);
          primaryKey_ = getDefaultInstance().getPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsToGetIsMutable() {
          if (!columnsToGet_.isModifiable()) {
            columnsToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnsToGet_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return A list containing the columnsToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsToGetList() {
          columnsToGet_.makeImmutable();
          return columnsToGet_;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return The count of columnsToGet.
         */
        public int getColumnsToGetCount() {
          return columnsToGet_.size();
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the element to return.
         * @return The columnsToGet at the given index.
         */
        public java.lang.String getColumnsToGet(int index) {
          return columnsToGet_.get(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnsToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsToGetBytes(int index) {
          return columnsToGet_.getByteString(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index to set the value at.
         * @param value The columnsToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnsToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param values The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnsToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnsToGet_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnsToGet() {
          columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The bytes of the columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> timeRangeBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         * @return Whether the timeRange field is set.
         */
        public boolean hasTimeRange() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         * @return The timeRange.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
          if (timeRangeBuilder_ == null) {
            return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          } else {
            return timeRangeBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder setTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            timeRange_ = value;
          } else {
            timeRangeBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder setTimeRange(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder builderForValue) {
          if (timeRangeBuilder_ == null) {
            timeRange_ = builderForValue.build();
          } else {
            timeRangeBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder mergeTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              timeRange_ != null &&
              timeRange_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance()) {
              getTimeRangeBuilder().mergeFrom(value);
            } else {
              timeRange_ = value;
            }
          } else {
            timeRangeBuilder_.mergeFrom(value);
          }
          if (timeRange_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder clearTimeRange() {
          bitField0_ = (bitField0_ & ~0x00000008);
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder getTimeRangeBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getTimeRangeFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
          if (timeRangeBuilder_ != null) {
            return timeRangeBuilder_.getMessageOrBuilder();
          } else {
            return timeRange_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> 
            getTimeRangeFieldBuilder() {
          if (timeRangeBuilder_ == null) {
            timeRangeBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder>(
                    getTimeRange(),
                    getParentForChildren(),
                    isClean());
            timeRange_ = null;
          }
          return timeRangeBuilder_;
        }
  
        private int maxVersions_ ;
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return Whether the maxVersions field is set.
         */
        @java.lang.Override
        public boolean hasMaxVersions() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return The maxVersions.
         */
        @java.lang.Override
        public int getMaxVersions() {
          return maxVersions_;
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @param value The maxVersions to set.
         * @return This builder for chaining.
         */
        public Builder setMaxVersions(int value) {
  
          maxVersions_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearMaxVersions() {
          bitField0_ = (bitField0_ & ~0x00000010);
          maxVersions_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes filter = 7;</code>
         * @return Whether the filter field is set.
         */
        @java.lang.Override
        public boolean hasFilter() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional bytes filter = 7;</code>
         * @return The filter.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
          return filter_;
        }
        /**
         * <code>optional bytes filter = 7;</code>
         * @param value The filter to set.
         * @return This builder for chaining.
         */
        public Builder setFilter(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          filter_ = value;
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes filter = 7;</code>
         * @return This builder for chaining.
         */
        public Builder clearFilter() {
          bitField0_ = (bitField0_ & ~0x00000020);
          filter_ = getDefaultInstance().getFilter();
          onChanged();
          return this;
        }
  
        private java.lang.Object startColumn_ = "";
        /**
         * <code>optional string start_column = 8;</code>
         * @return Whether the startColumn field is set.
         */
        public boolean hasStartColumn() {
          return ((bitField0_ & 0x00000040) != 0);
        }
        /**
         * <code>optional string start_column = 8;</code>
         * @return The startColumn.
         */
        public java.lang.String getStartColumn() {
          java.lang.Object ref = startColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              startColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string start_column = 8;</code>
         * @return The bytes for startColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStartColumnBytes() {
          java.lang.Object ref = startColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            startColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string start_column = 8;</code>
         * @param value The startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearStartColumn() {
          startColumn_ = getDefaultInstance().getStartColumn();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 8;</code>
         * @param value The bytes for startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
  
        private java.lang.Object endColumn_ = "";
        /**
         * <code>optional string end_column = 9;</code>
         * @return Whether the endColumn field is set.
         */
        public boolean hasEndColumn() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>optional string end_column = 9;</code>
         * @return The endColumn.
         */
        public java.lang.String getEndColumn() {
          java.lang.Object ref = endColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              endColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string end_column = 9;</code>
         * @return The bytes for endColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getEndColumnBytes() {
          java.lang.Object ref = endColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            endColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string end_column = 9;</code>
         * @param value The endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 9;</code>
         * @return This builder for chaining.
         */
        public Builder clearEndColumn() {
          endColumn_ = getDefaultInstance().getEndColumn();
          bitField0_ = (bitField0_ & ~0x00000080);
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 9;</code>
         * @param value The bytes for endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes token = 10;</code>
         * @return Whether the token field is set.
         */
        @java.lang.Override
        public boolean hasToken() {
          return ((bitField0_ & 0x00000100) != 0);
        }
        /**
         * <code>optional bytes token = 10;</code>
         * @return The token.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken() {
          return token_;
        }
        /**
         * <code>optional bytes token = 10;</code>
         * @param value The token to set.
         * @return This builder for chaining.
         */
        public Builder setToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          token_ = value;
          bitField0_ |= 0x00000100;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes token = 10;</code>
         * @return This builder for chaining.
         */
        public Builder clearToken() {
          bitField0_ = (bitField0_ & ~0x00000100);
          token_ = getDefaultInstance().getToken();
          onChanged();
          return this;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 11;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000200) != 0);
        }
        /**
         * <code>optional string transaction_id = 11;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 11;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 11;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000200;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 11;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000200);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 11;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000200;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetRowRequest>() {
        @java.lang.Override
        public GetRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>required bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>required bytes row = 2;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
  
      /**
       * <code>optional bytes next_token = 3;</code>
       * @return Whether the nextToken field is set.
       */
      boolean hasNextToken();
      /**
       * <code>optional bytes next_token = 3;</code>
       * @return The nextToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRowResponse}
     */
    public static final class GetRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetRowResponse)
        GetRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetRowResponse.class.getName());
      }
      // Use GetRowResponse.newBuilder() to construct.
      private GetRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes row = 2;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      public static final int NEXT_TOKEN_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes next_token = 3;</code>
       * @return Whether the nextToken field is set.
       */
      @java.lang.Override
      public boolean hasNextToken() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes next_token = 3;</code>
       * @return The nextToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
        return nextToken_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRow()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, row_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(3, nextToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, row_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, nextToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (hasNextToken() != other.hasNextToken()) return false;
        if (hasNextToken()) {
          if (!getNextToken()
              .equals(other.getNextToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        if (hasNextToken()) {
          hash = (37 * hash) + NEXT_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getNextToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.nextToken_ = nextToken_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          if (other.hasNextToken()) {
            setNextToken(other.getNextToken());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!hasRow()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  nextToken_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes row = 2;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes row = 2;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>required bytes row = 2;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes row = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000002);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes next_token = 3;</code>
         * @return Whether the nextToken field is set.
         */
        @java.lang.Override
        public boolean hasNextToken() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bytes next_token = 3;</code>
         * @return The nextToken.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
          return nextToken_;
        }
        /**
         * <code>optional bytes next_token = 3;</code>
         * @param value The nextToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextToken_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes next_token = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextToken() {
          bitField0_ = (bitField0_ & ~0x00000004);
          nextToken_ = getDefaultInstance().getNextToken();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetRowResponse>() {
        @java.lang.Override
        public GetRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UpdateRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      boolean hasRowChange();
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      boolean hasCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      boolean hasReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder();
  
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest}
     */
    public static final class UpdateRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest)
        UpdateRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UpdateRowRequest.class.getName());
      }
      // Use UpdateRowRequest.newBuilder() to construct.
      private UpdateRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UpdateRowRequest() {
        tableName_ = "";
        rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROW_CHANGE_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      @java.lang.Override
      public boolean hasRowChange() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
        return rowChange_;
      }
  
      public static final int CONDITION_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      @java.lang.Override
      public boolean hasCondition() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
  
      public static final int RETURN_CONTENT_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      @java.lang.Override
      public boolean hasReturnContent() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRowChange()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCondition()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getCondition().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, rowChange_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rowChange_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(5, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasRowChange() != other.hasRowChange()) return false;
        if (hasRowChange()) {
          if (!getRowChange()
              .equals(other.getRowChange())) return false;
        }
        if (hasCondition() != other.hasCondition()) return false;
        if (hasCondition()) {
          if (!getCondition()
              .equals(other.getCondition())) return false;
        }
        if (hasReturnContent() != other.hasReturnContent()) return false;
        if (hasReturnContent()) {
          if (!getReturnContent()
              .equals(other.getReturnContent())) return false;
        }
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasRowChange()) {
          hash = (37 * hash) + ROW_CHANGE_FIELD_NUMBER;
          hash = (53 * hash) + getRowChange().hashCode();
        }
        if (hasCondition()) {
          hash = (37 * hash) + CONDITION_FIELD_NUMBER;
          hash = (53 * hash) + getCondition().hashCode();
        }
        if (hasReturnContent()) {
          hash = (37 * hash) + RETURN_CONTENT_FIELD_NUMBER;
          hash = (53 * hash) + getReturnContent().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConditionFieldBuilder();
            getReturnContentFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rowChange_ = rowChange_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.condition_ = conditionBuilder_ == null
                ? condition_
                : conditionBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.returnContent_ = returnContentBuilder_ == null
                ? returnContent_
                : returnContentBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasRowChange()) {
            setRowChange(other.getRowChange());
          }
          if (other.hasCondition()) {
            mergeCondition(other.getCondition());
          }
          if (other.hasReturnContent()) {
            mergeReturnContent(other.getReturnContent());
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000010;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasRowChange()) {
            return false;
          }
          if (!hasCondition()) {
            return false;
          }
          if (!getCondition().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  rowChange_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConditionFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getReturnContentFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes row_change = 2;</code>
         * @return Whether the rowChange field is set.
         */
        @java.lang.Override
        public boolean hasRowChange() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return The rowChange.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
          return rowChange_;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @param value The rowChange to set.
         * @return This builder for chaining.
         */
        public Builder setRowChange(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rowChange_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRowChange() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rowChange_ = getDefaultInstance().getRowChange();
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> conditionBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return Whether the condition field is set.
         */
        public boolean hasCondition() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return The condition.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
          if (conditionBuilder_ == null) {
            return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          } else {
            return conditionBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            condition_ = value;
          } else {
            conditionBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder builderForValue) {
          if (conditionBuilder_ == null) {
            condition_ = builderForValue.build();
          } else {
            conditionBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder mergeCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              condition_ != null &&
              condition_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance()) {
              getConditionBuilder().mergeFrom(value);
            } else {
              condition_ = value;
            }
          } else {
            conditionBuilder_.mergeFrom(value);
          }
          if (condition_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder clearCondition() {
          bitField0_ = (bitField0_ & ~0x00000004);
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder getConditionBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConditionFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
          if (conditionBuilder_ != null) {
            return conditionBuilder_.getMessageOrBuilder();
          } else {
            return condition_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> 
            getConditionFieldBuilder() {
          if (conditionBuilder_ == null) {
            conditionBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder>(
                    getCondition(),
                    getParentForChildren(),
                    isClean());
            condition_ = null;
          }
          return conditionBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> returnContentBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return Whether the returnContent field is set.
         */
        public boolean hasReturnContent() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return The returnContent.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
          if (returnContentBuilder_ == null) {
            return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          } else {
            return returnContentBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            returnContent_ = value;
          } else {
            returnContentBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder builderForValue) {
          if (returnContentBuilder_ == null) {
            returnContent_ = builderForValue.build();
          } else {
            returnContentBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder mergeReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              returnContent_ != null &&
              returnContent_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance()) {
              getReturnContentBuilder().mergeFrom(value);
            } else {
              returnContent_ = value;
            }
          } else {
            returnContentBuilder_.mergeFrom(value);
          }
          if (returnContent_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder clearReturnContent() {
          bitField0_ = (bitField0_ & ~0x00000008);
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder getReturnContentBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getReturnContentFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
          if (returnContentBuilder_ != null) {
            return returnContentBuilder_.getMessageOrBuilder();
          } else {
            return returnContent_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> 
            getReturnContentFieldBuilder() {
          if (returnContentBuilder_ == null) {
            returnContentBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder>(
                    getReturnContent(),
                    getParentForChildren(),
                    isClean());
            returnContent_ = null;
          }
          return returnContentBuilder_;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UpdateRowRequest>() {
        @java.lang.Override
        public UpdateRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface UpdateRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse}
     */
    public static final class UpdateRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse)
        UpdateRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          UpdateRowResponse.class.getName());
      }
      // Use UpdateRowResponse.newBuilder() to construct.
      private UpdateRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private UpdateRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, row_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, row_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes row = 2;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000002);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.UpdateRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<UpdateRowResponse>() {
        @java.lang.Override
        public UpdateRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<UpdateRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.UpdateRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface PutRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.PutRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>required bytes row = 2;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      boolean hasCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      boolean hasReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder();
  
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PutRowRequest}
     */
    public static final class PutRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.PutRowRequest)
        PutRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PutRowRequest.class.getName());
      }
      // Use PutRowRequest.newBuilder() to construct.
      private PutRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private PutRowRequest() {
        tableName_ = "";
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROW_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes row = 2;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      public static final int CONDITION_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      @java.lang.Override
      public boolean hasCondition() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
  
      public static final int RETURN_CONTENT_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      @java.lang.Override
      public boolean hasReturnContent() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRow()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCondition()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getCondition().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, row_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, row_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(5, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (hasCondition() != other.hasCondition()) return false;
        if (hasCondition()) {
          if (!getCondition()
              .equals(other.getCondition())) return false;
        }
        if (hasReturnContent() != other.hasReturnContent()) return false;
        if (hasReturnContent()) {
          if (!getReturnContent()
              .equals(other.getReturnContent())) return false;
        }
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        if (hasCondition()) {
          hash = (37 * hash) + CONDITION_FIELD_NUMBER;
          hash = (53 * hash) + getCondition().hashCode();
        }
        if (hasReturnContent()) {
          hash = (37 * hash) + RETURN_CONTENT_FIELD_NUMBER;
          hash = (53 * hash) + getReturnContent().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PutRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.PutRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConditionFieldBuilder();
            getReturnContentFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.condition_ = conditionBuilder_ == null
                ? condition_
                : conditionBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.returnContent_ = returnContentBuilder_ == null
                ? returnContent_
                : returnContentBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          if (other.hasCondition()) {
            mergeCondition(other.getCondition());
          }
          if (other.hasReturnContent()) {
            mergeReturnContent(other.getReturnContent());
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000010;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasRow()) {
            return false;
          }
          if (!hasCondition()) {
            return false;
          }
          if (!getCondition().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConditionFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getReturnContentFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes row = 2;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes row = 2;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>required bytes row = 2;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes row = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000002);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> conditionBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return Whether the condition field is set.
         */
        public boolean hasCondition() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return The condition.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
          if (conditionBuilder_ == null) {
            return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          } else {
            return conditionBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            condition_ = value;
          } else {
            conditionBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder builderForValue) {
          if (conditionBuilder_ == null) {
            condition_ = builderForValue.build();
          } else {
            conditionBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder mergeCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              condition_ != null &&
              condition_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance()) {
              getConditionBuilder().mergeFrom(value);
            } else {
              condition_ = value;
            }
          } else {
            conditionBuilder_.mergeFrom(value);
          }
          if (condition_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder clearCondition() {
          bitField0_ = (bitField0_ & ~0x00000004);
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder getConditionBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConditionFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
          if (conditionBuilder_ != null) {
            return conditionBuilder_.getMessageOrBuilder();
          } else {
            return condition_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> 
            getConditionFieldBuilder() {
          if (conditionBuilder_ == null) {
            conditionBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder>(
                    getCondition(),
                    getParentForChildren(),
                    isClean());
            condition_ = null;
          }
          return conditionBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> returnContentBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return Whether the returnContent field is set.
         */
        public boolean hasReturnContent() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return The returnContent.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
          if (returnContentBuilder_ == null) {
            return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          } else {
            return returnContentBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            returnContent_ = value;
          } else {
            returnContentBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder builderForValue) {
          if (returnContentBuilder_ == null) {
            returnContent_ = builderForValue.build();
          } else {
            returnContentBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder mergeReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              returnContent_ != null &&
              returnContent_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance()) {
              getReturnContentBuilder().mergeFrom(value);
            } else {
              returnContent_ = value;
            }
          } else {
            returnContentBuilder_.mergeFrom(value);
          }
          if (returnContent_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder clearReturnContent() {
          bitField0_ = (bitField0_ & ~0x00000008);
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder getReturnContentBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getReturnContentFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
          if (returnContentBuilder_ != null) {
            return returnContentBuilder_.getMessageOrBuilder();
          } else {
            return returnContent_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> 
            getReturnContentFieldBuilder() {
          if (returnContentBuilder_ == null) {
            returnContentBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder>(
                    getReturnContent(),
                    getParentForChildren(),
                    isClean());
            returnContent_ = null;
          }
          return returnContentBuilder_;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.PutRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.PutRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<PutRowRequest>() {
        @java.lang.Override
        public PutRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface PutRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.PutRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PutRowResponse}
     */
    public static final class PutRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.PutRowResponse)
        PutRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          PutRowResponse.class.getName());
      }
      // Use PutRowResponse.newBuilder() to construct.
      private PutRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private PutRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, row_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, row_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.PutRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.PutRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes row = 2;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000002);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.PutRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.PutRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<PutRowResponse>() {
        @java.lang.Override
        public PutRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<PutRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PutRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return Whether the primaryKey field is set.
       */
      boolean hasPrimaryKey();
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return The primaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      boolean hasCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      boolean hasReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder();
  
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest}
     */
    public static final class DeleteRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest)
        DeleteRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteRowRequest.class.getName());
      }
      // Use DeleteRowRequest.newBuilder() to construct.
      private DeleteRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteRowRequest() {
        tableName_ = "";
        primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PRIMARY_KEY_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return Whether the primaryKey field is set.
       */
      @java.lang.Override
      public boolean hasPrimaryKey() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes primary_key = 2;</code>
       * @return The primaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey() {
        return primaryKey_;
      }
  
      public static final int CONDITION_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      @java.lang.Override
      public boolean hasCondition() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
  
      public static final int RETURN_CONTENT_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      @java.lang.Override
      public boolean hasReturnContent() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 5;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCondition()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getCondition().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, primaryKey_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, primaryKey_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getReturnContent());
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(5, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasPrimaryKey() != other.hasPrimaryKey()) return false;
        if (hasPrimaryKey()) {
          if (!getPrimaryKey()
              .equals(other.getPrimaryKey())) return false;
        }
        if (hasCondition() != other.hasCondition()) return false;
        if (hasCondition()) {
          if (!getCondition()
              .equals(other.getCondition())) return false;
        }
        if (hasReturnContent() != other.hasReturnContent()) return false;
        if (hasReturnContent()) {
          if (!getReturnContent()
              .equals(other.getReturnContent())) return false;
        }
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasPrimaryKey()) {
          hash = (37 * hash) + PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrimaryKey().hashCode();
        }
        if (hasCondition()) {
          hash = (37 * hash) + CONDITION_FIELD_NUMBER;
          hash = (53 * hash) + getCondition().hashCode();
        }
        if (hasReturnContent()) {
          hash = (37 * hash) + RETURN_CONTENT_FIELD_NUMBER;
          hash = (53 * hash) + getReturnContent().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConditionFieldBuilder();
            getReturnContentFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.primaryKey_ = primaryKey_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.condition_ = conditionBuilder_ == null
                ? condition_
                : conditionBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.returnContent_ = returnContentBuilder_ == null
                ? returnContent_
                : returnContentBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasPrimaryKey()) {
            setPrimaryKey(other.getPrimaryKey());
          }
          if (other.hasCondition()) {
            mergeCondition(other.getCondition());
          }
          if (other.hasReturnContent()) {
            mergeReturnContent(other.getReturnContent());
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000010;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasPrimaryKey()) {
            return false;
          }
          if (!hasCondition()) {
            return false;
          }
          if (!getCondition().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  primaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConditionFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getReturnContentFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString primaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return Whether the primaryKey field is set.
         */
        @java.lang.Override
        public boolean hasPrimaryKey() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return The primaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey() {
          return primaryKey_;
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @param value The primaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          primaryKey_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes primary_key = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000002);
          primaryKey_ = getDefaultInstance().getPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> conditionBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return Whether the condition field is set.
         */
        public boolean hasCondition() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return The condition.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
          if (conditionBuilder_ == null) {
            return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          } else {
            return conditionBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            condition_ = value;
          } else {
            conditionBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder builderForValue) {
          if (conditionBuilder_ == null) {
            condition_ = builderForValue.build();
          } else {
            conditionBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder mergeCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              condition_ != null &&
              condition_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance()) {
              getConditionBuilder().mergeFrom(value);
            } else {
              condition_ = value;
            }
          } else {
            conditionBuilder_.mergeFrom(value);
          }
          if (condition_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder clearCondition() {
          bitField0_ = (bitField0_ & ~0x00000004);
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder getConditionBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConditionFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
          if (conditionBuilder_ != null) {
            return conditionBuilder_.getMessageOrBuilder();
          } else {
            return condition_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> 
            getConditionFieldBuilder() {
          if (conditionBuilder_ == null) {
            conditionBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder>(
                    getCondition(),
                    getParentForChildren(),
                    isClean());
            condition_ = null;
          }
          return conditionBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> returnContentBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return Whether the returnContent field is set.
         */
        public boolean hasReturnContent() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return The returnContent.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
          if (returnContentBuilder_ == null) {
            return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          } else {
            return returnContentBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            returnContent_ = value;
          } else {
            returnContentBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder builderForValue) {
          if (returnContentBuilder_ == null) {
            returnContent_ = builderForValue.build();
          } else {
            returnContentBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder mergeReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              returnContent_ != null &&
              returnContent_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance()) {
              getReturnContentBuilder().mergeFrom(value);
            } else {
              returnContent_ = value;
            }
          } else {
            returnContentBuilder_.mergeFrom(value);
          }
          if (returnContent_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder clearReturnContent() {
          bitField0_ = (bitField0_ & ~0x00000008);
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder getReturnContentBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getReturnContentFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
          if (returnContentBuilder_ != null) {
            return returnContentBuilder_.getMessageOrBuilder();
          } else {
            return returnContent_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> 
            getReturnContentFieldBuilder() {
          if (returnContentBuilder_ == null) {
            returnContentBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder>(
                    getReturnContent(),
                    getParentForChildren(),
                    isClean());
            returnContent_ = null;
          }
          return returnContentBuilder_;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 5;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteRowRequest>() {
        @java.lang.Override
        public DeleteRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DeleteRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse}
     */
    public static final class DeleteRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse)
        DeleteRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DeleteRowResponse.class.getName());
      }
      // Use DeleteRowResponse.newBuilder() to construct.
      private DeleteRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DeleteRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes row = 2;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes row = 2;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, row_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, row_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes row = 2;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes row = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000002);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DeleteRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DeleteRowResponse>() {
        @java.lang.Override
        public DeleteRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DeleteRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DeleteRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableInBatchGetRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @return A list containing the primaryKey.
       */
      java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> getPrimaryKeyList();
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @return The count of primaryKey.
       */
      int getPrimaryKeyCount();
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @param index The index of the element to return.
       * @return The primaryKey at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey(int index);
  
      /**
       * <code>repeated bytes token = 3;</code>
       * @return A list containing the token.
       */
      java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> getTokenList();
      /**
       * <code>repeated bytes token = 3;</code>
       * @return The count of token.
       */
      int getTokenCount();
      /**
       * <code>repeated bytes token = 3;</code>
       * @param index The index of the element to return.
       * @return The token at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken(int index);
  
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @return A list containing the columnsToGet.
       */
      java.util.List<java.lang.String>
          getColumnsToGetList();
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @return The count of columnsToGet.
       */
      int getColumnsToGetCount();
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      java.lang.String getColumnsToGet(int index);
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index);
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       * @return Whether the timeRange field is set.
       */
      boolean hasTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       * @return The timeRange.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder();
  
      /**
       * <code>optional int32 max_versions = 6;</code>
       * @return Whether the maxVersions field is set.
       */
      boolean hasMaxVersions();
      /**
       * <code>optional int32 max_versions = 6;</code>
       * @return The maxVersions.
       */
      int getMaxVersions();
  
      /**
       * <code>optional bytes filter = 8;</code>
       * @return Whether the filter field is set.
       */
      boolean hasFilter();
      /**
       * <code>optional bytes filter = 8;</code>
       * @return The filter.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter();
  
      /**
       * <code>optional string start_column = 9;</code>
       * @return Whether the startColumn field is set.
       */
      boolean hasStartColumn();
      /**
       * <code>optional string start_column = 9;</code>
       * @return The startColumn.
       */
      java.lang.String getStartColumn();
      /**
       * <code>optional string start_column = 9;</code>
       * @return The bytes for startColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes();
  
      /**
       * <code>optional string end_column = 10;</code>
       * @return Whether the endColumn field is set.
       */
      boolean hasEndColumn();
      /**
       * <code>optional string end_column = 10;</code>
       * @return The endColumn.
       */
      java.lang.String getEndColumn();
      /**
       * <code>optional string end_column = 10;</code>
       * @return The bytes for endColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest}
     */
    public static final class TableInBatchGetRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest)
        TableInBatchGetRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableInBatchGetRowRequest.class.getName());
      }
      // Use TableInBatchGetRowRequest.newBuilder() to construct.
      private TableInBatchGetRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableInBatchGetRowRequest() {
        tableName_ = "";
        primaryKey_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        token_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        startColumn_ = "";
        endColumn_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PRIMARY_KEY_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> primaryKey_ =
          emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @return A list containing the primaryKey.
       */
      @java.lang.Override
      public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
          getPrimaryKeyList() {
        return primaryKey_;
      }
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @return The count of primaryKey.
       */
      public int getPrimaryKeyCount() {
        return primaryKey_.size();
      }
      /**
       * <code>repeated bytes primary_key = 2;</code>
       * @param index The index of the element to return.
       * @return The primaryKey at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey(int index) {
        return primaryKey_.get(index);
      }
  
      public static final int TOKEN_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> token_ =
          emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
      /**
       * <code>repeated bytes token = 3;</code>
       * @return A list containing the token.
       */
      @java.lang.Override
      public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
          getTokenList() {
        return token_;
      }
      /**
       * <code>repeated bytes token = 3;</code>
       * @return The count of token.
       */
      public int getTokenCount() {
        return token_.size();
      }
      /**
       * <code>repeated bytes token = 3;</code>
       * @param index The index of the element to return.
       * @return The token at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken(int index) {
        return token_.get(index);
      }
  
      public static final int COLUMNS_TO_GET_FIELD_NUMBER = 4;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @return A list containing the columnsToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsToGetList() {
        return columnsToGet_;
      }
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @return The count of columnsToGet.
       */
      public int getColumnsToGetCount() {
        return columnsToGet_.size();
      }
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      public java.lang.String getColumnsToGet(int index) {
        return columnsToGet_.get(index);
      }
      /**
       * <code>repeated string columns_to_get = 4;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index) {
        return columnsToGet_.getByteString(index);
      }
  
      public static final int TIME_RANGE_FIELD_NUMBER = 5;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       * @return Whether the timeRange field is set.
       */
      @java.lang.Override
      public boolean hasTimeRange() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       * @return The timeRange.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
  
      public static final int MAX_VERSIONS_FIELD_NUMBER = 6;
      private int maxVersions_ = 0;
      /**
       * <code>optional int32 max_versions = 6;</code>
       * @return Whether the maxVersions field is set.
       */
      @java.lang.Override
      public boolean hasMaxVersions() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int32 max_versions = 6;</code>
       * @return The maxVersions.
       */
      @java.lang.Override
      public int getMaxVersions() {
        return maxVersions_;
      }
  
      public static final int FILTER_FIELD_NUMBER = 8;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes filter = 8;</code>
       * @return Whether the filter field is set.
       */
      @java.lang.Override
      public boolean hasFilter() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes filter = 8;</code>
       * @return The filter.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
        return filter_;
      }
  
      public static final int START_COLUMN_FIELD_NUMBER = 9;
      @SuppressWarnings("serial")
      private volatile java.lang.Object startColumn_ = "";
      /**
       * <code>optional string start_column = 9;</code>
       * @return Whether the startColumn field is set.
       */
      @java.lang.Override
      public boolean hasStartColumn() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional string start_column = 9;</code>
       * @return The startColumn.
       */
      @java.lang.Override
      public java.lang.String getStartColumn() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            startColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string start_column = 9;</code>
       * @return The bytes for startColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          startColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int END_COLUMN_FIELD_NUMBER = 10;
      @SuppressWarnings("serial")
      private volatile java.lang.Object endColumn_ = "";
      /**
       * <code>optional string end_column = 10;</code>
       * @return Whether the endColumn field is set.
       */
      @java.lang.Override
      public boolean hasEndColumn() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional string end_column = 10;</code>
       * @return The endColumn.
       */
      @java.lang.Override
      public java.lang.String getEndColumn() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            endColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string end_column = 10;</code>
       * @return The bytes for endColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          endColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < primaryKey_.size(); i++) {
          output.writeBytes(2, primaryKey_.get(i));
        }
        for (int i = 0; i < token_.size(); i++) {
          output.writeBytes(3, token_.get(i));
        }
        for (int i = 0; i < columnsToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 4, columnsToGet_.getRaw(i));
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(5, getTimeRange());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt32(6, maxVersions_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(8, filter_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 9, startColumn_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 10, endColumn_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < primaryKey_.size(); i++) {
            dataSize += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(primaryKey_.get(i));
          }
          size += dataSize;
          size += 1 * getPrimaryKeyList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < token_.size(); i++) {
            dataSize += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(token_.get(i));
          }
          size += dataSize;
          size += 1 * getTokenList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnsToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnsToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsToGetList().size();
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(5, getTimeRange());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(6, maxVersions_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, filter_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(9, startColumn_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(10, endColumn_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getPrimaryKeyList()
            .equals(other.getPrimaryKeyList())) return false;
        if (!getTokenList()
            .equals(other.getTokenList())) return false;
        if (!getColumnsToGetList()
            .equals(other.getColumnsToGetList())) return false;
        if (hasTimeRange() != other.hasTimeRange()) return false;
        if (hasTimeRange()) {
          if (!getTimeRange()
              .equals(other.getTimeRange())) return false;
        }
        if (hasMaxVersions() != other.hasMaxVersions()) return false;
        if (hasMaxVersions()) {
          if (getMaxVersions()
              != other.getMaxVersions()) return false;
        }
        if (hasFilter() != other.hasFilter()) return false;
        if (hasFilter()) {
          if (!getFilter()
              .equals(other.getFilter())) return false;
        }
        if (hasStartColumn() != other.hasStartColumn()) return false;
        if (hasStartColumn()) {
          if (!getStartColumn()
              .equals(other.getStartColumn())) return false;
        }
        if (hasEndColumn() != other.hasEndColumn()) return false;
        if (hasEndColumn()) {
          if (!getEndColumn()
              .equals(other.getEndColumn())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getPrimaryKeyCount() > 0) {
          hash = (37 * hash) + PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrimaryKeyList().hashCode();
        }
        if (getTokenCount() > 0) {
          hash = (37 * hash) + TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getTokenList().hashCode();
        }
        if (getColumnsToGetCount() > 0) {
          hash = (37 * hash) + COLUMNS_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsToGetList().hashCode();
        }
        if (hasTimeRange()) {
          hash = (37 * hash) + TIME_RANGE_FIELD_NUMBER;
          hash = (53 * hash) + getTimeRange().hashCode();
        }
        if (hasMaxVersions()) {
          hash = (37 * hash) + MAX_VERSIONS_FIELD_NUMBER;
          hash = (53 * hash) + getMaxVersions();
        }
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        if (hasStartColumn()) {
          hash = (37 * hash) + START_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getStartColumn().hashCode();
        }
        if (hasEndColumn()) {
          hash = (37 * hash) + END_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getEndColumn().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getTimeRangeFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          primaryKey_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          token_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          columnsToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          maxVersions_ = 0;
          filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          startColumn_ = "";
          endColumn_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            primaryKey_.makeImmutable();
            result.primaryKey_ = primaryKey_;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            token_.makeImmutable();
            result.token_ = token_;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            columnsToGet_.makeImmutable();
            result.columnsToGet_ = columnsToGet_;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.timeRange_ = timeRangeBuilder_ == null
                ? timeRange_
                : timeRangeBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.maxVersions_ = maxVersions_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000040) != 0)) {
            result.filter_ = filter_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.startColumn_ = startColumn_;
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000100) != 0)) {
            result.endColumn_ = endColumn_;
            to_bitField0_ |= 0x00000020;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (!other.primaryKey_.isEmpty()) {
            if (primaryKey_.isEmpty()) {
              primaryKey_ = other.primaryKey_;
              primaryKey_.makeImmutable();
              bitField0_ |= 0x00000002;
            } else {
              ensurePrimaryKeyIsMutable();
              primaryKey_.addAll(other.primaryKey_);
            }
            onChanged();
          }
          if (!other.token_.isEmpty()) {
            if (token_.isEmpty()) {
              token_ = other.token_;
              token_.makeImmutable();
              bitField0_ |= 0x00000004;
            } else {
              ensureTokenIsMutable();
              token_.addAll(other.token_);
            }
            onChanged();
          }
          if (!other.columnsToGet_.isEmpty()) {
            if (columnsToGet_.isEmpty()) {
              columnsToGet_ = other.columnsToGet_;
              bitField0_ |= 0x00000008;
            } else {
              ensureColumnsToGetIsMutable();
              columnsToGet_.addAll(other.columnsToGet_);
            }
            onChanged();
          }
          if (other.hasTimeRange()) {
            mergeTimeRange(other.getTimeRange());
          }
          if (other.hasMaxVersions()) {
            setMaxVersions(other.getMaxVersions());
          }
          if (other.hasFilter()) {
            setFilter(other.getFilter());
          }
          if (other.hasStartColumn()) {
            startColumn_ = other.startColumn_;
            bitField0_ |= 0x00000080;
            onChanged();
          }
          if (other.hasEndColumn()) {
            endColumn_ = other.endColumn_;
            bitField0_ |= 0x00000100;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString v = input.readBytes();
                  ensurePrimaryKeyIsMutable();
                  primaryKey_.add(v);
                  break;
                } // case 18
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString v = input.readBytes();
                  ensureTokenIsMutable();
                  token_.add(v);
                  break;
                } // case 26
                case 34: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsToGetIsMutable();
                  columnsToGet_.add(bs);
                  break;
                } // case 34
                case 42: {
                  input.readMessage(
                      getTimeRangeFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                case 48: {
                  maxVersions_ = input.readInt32();
                  bitField0_ |= 0x00000020;
                  break;
                } // case 48
                case 66: {
                  filter_ = input.readBytes();
                  bitField0_ |= 0x00000040;
                  break;
                } // case 66
                case 74: {
                  startColumn_ = input.readBytes();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 74
                case 82: {
                  endColumn_ = input.readBytes();
                  bitField0_ |= 0x00000100;
                  break;
                } // case 82
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> primaryKey_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        private void ensurePrimaryKeyIsMutable() {
          if (!primaryKey_.isModifiable()) {
            primaryKey_ = makeMutableCopy(primaryKey_);
          }
          bitField0_ |= 0x00000002;
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @return A list containing the primaryKey.
         */
        public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
            getPrimaryKeyList() {
          primaryKey_.makeImmutable();
          return primaryKey_;
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @return The count of primaryKey.
         */
        public int getPrimaryKeyCount() {
          return primaryKey_.size();
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @param index The index of the element to return.
         * @return The primaryKey at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getPrimaryKey(int index) {
          return primaryKey_.get(index);
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @param index The index to set the value at.
         * @param value The primaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setPrimaryKey(
            int index, com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensurePrimaryKeyIsMutable();
          primaryKey_.set(index, value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @param value The primaryKey to add.
         * @return This builder for chaining.
         */
        public Builder addPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensurePrimaryKeyIsMutable();
          primaryKey_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @param values The primaryKey to add.
         * @return This builder for chaining.
         */
        public Builder addAllPrimaryKey(
            java.lang.Iterable<? extends com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> values) {
          ensurePrimaryKeyIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, primaryKey_);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes primary_key = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearPrimaryKey() {
          primaryKey_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> token_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        private void ensureTokenIsMutable() {
          if (!token_.isModifiable()) {
            token_ = makeMutableCopy(token_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @return A list containing the token.
         */
        public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
            getTokenList() {
          token_.makeImmutable();
          return token_;
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @return The count of token.
         */
        public int getTokenCount() {
          return token_.size();
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @param index The index of the element to return.
         * @return The token at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken(int index) {
          return token_.get(index);
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @param index The index to set the value at.
         * @param value The token to set.
         * @return This builder for chaining.
         */
        public Builder setToken(
            int index, com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureTokenIsMutable();
          token_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @param value The token to add.
         * @return This builder for chaining.
         */
        public Builder addToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureTokenIsMutable();
          token_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @param values The token to add.
         * @return This builder for chaining.
         */
        public Builder addAllToken(
            java.lang.Iterable<? extends com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> values) {
          ensureTokenIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, token_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes token = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearToken() {
          token_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsToGetIsMutable() {
          if (!columnsToGet_.isModifiable()) {
            columnsToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnsToGet_);
          }
          bitField0_ |= 0x00000008;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @return A list containing the columnsToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsToGetList() {
          columnsToGet_.makeImmutable();
          return columnsToGet_;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @return The count of columnsToGet.
         */
        public int getColumnsToGetCount() {
          return columnsToGet_.size();
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param index The index of the element to return.
         * @return The columnsToGet at the given index.
         */
        public java.lang.String getColumnsToGet(int index) {
          return columnsToGet_.get(index);
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnsToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsToGetBytes(int index) {
          return columnsToGet_.getByteString(index);
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param index The index to set the value at.
         * @param value The columnsToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnsToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.set(index, value);
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param value The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param values The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnsToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnsToGet_);
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnsToGet() {
          columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 4;</code>
         * @param value The bytes of the columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> timeRangeBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         * @return Whether the timeRange field is set.
         */
        public boolean hasTimeRange() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         * @return The timeRange.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
          if (timeRangeBuilder_ == null) {
            return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          } else {
            return timeRangeBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public Builder setTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            timeRange_ = value;
          } else {
            timeRangeBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public Builder setTimeRange(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder builderForValue) {
          if (timeRangeBuilder_ == null) {
            timeRange_ = builderForValue.build();
          } else {
            timeRangeBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public Builder mergeTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (((bitField0_ & 0x00000010) != 0) &&
              timeRange_ != null &&
              timeRange_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance()) {
              getTimeRangeBuilder().mergeFrom(value);
            } else {
              timeRange_ = value;
            }
          } else {
            timeRangeBuilder_.mergeFrom(value);
          }
          if (timeRange_ != null) {
            bitField0_ |= 0x00000010;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public Builder clearTimeRange() {
          bitField0_ = (bitField0_ & ~0x00000010);
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder getTimeRangeBuilder() {
          bitField0_ |= 0x00000010;
          onChanged();
          return getTimeRangeFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
          if (timeRangeBuilder_ != null) {
            return timeRangeBuilder_.getMessageOrBuilder();
          } else {
            return timeRange_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 5;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> 
            getTimeRangeFieldBuilder() {
          if (timeRangeBuilder_ == null) {
            timeRangeBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder>(
                    getTimeRange(),
                    getParentForChildren(),
                    isClean());
            timeRange_ = null;
          }
          return timeRangeBuilder_;
        }
  
        private int maxVersions_ ;
        /**
         * <code>optional int32 max_versions = 6;</code>
         * @return Whether the maxVersions field is set.
         */
        @java.lang.Override
        public boolean hasMaxVersions() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional int32 max_versions = 6;</code>
         * @return The maxVersions.
         */
        @java.lang.Override
        public int getMaxVersions() {
          return maxVersions_;
        }
        /**
         * <code>optional int32 max_versions = 6;</code>
         * @param value The maxVersions to set.
         * @return This builder for chaining.
         */
        public Builder setMaxVersions(int value) {
  
          maxVersions_ = value;
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 max_versions = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearMaxVersions() {
          bitField0_ = (bitField0_ & ~0x00000020);
          maxVersions_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes filter = 8;</code>
         * @return Whether the filter field is set.
         */
        @java.lang.Override
        public boolean hasFilter() {
          return ((bitField0_ & 0x00000040) != 0);
        }
        /**
         * <code>optional bytes filter = 8;</code>
         * @return The filter.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
          return filter_;
        }
        /**
         * <code>optional bytes filter = 8;</code>
         * @param value The filter to set.
         * @return This builder for chaining.
         */
        public Builder setFilter(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          filter_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes filter = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearFilter() {
          bitField0_ = (bitField0_ & ~0x00000040);
          filter_ = getDefaultInstance().getFilter();
          onChanged();
          return this;
        }
  
        private java.lang.Object startColumn_ = "";
        /**
         * <code>optional string start_column = 9;</code>
         * @return Whether the startColumn field is set.
         */
        public boolean hasStartColumn() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>optional string start_column = 9;</code>
         * @return The startColumn.
         */
        public java.lang.String getStartColumn() {
          java.lang.Object ref = startColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              startColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string start_column = 9;</code>
         * @return The bytes for startColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStartColumnBytes() {
          java.lang.Object ref = startColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            startColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string start_column = 9;</code>
         * @param value The startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 9;</code>
         * @return This builder for chaining.
         */
        public Builder clearStartColumn() {
          startColumn_ = getDefaultInstance().getStartColumn();
          bitField0_ = (bitField0_ & ~0x00000080);
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 9;</code>
         * @param value The bytes for startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
  
        private java.lang.Object endColumn_ = "";
        /**
         * <code>optional string end_column = 10;</code>
         * @return Whether the endColumn field is set.
         */
        public boolean hasEndColumn() {
          return ((bitField0_ & 0x00000100) != 0);
        }
        /**
         * <code>optional string end_column = 10;</code>
         * @return The endColumn.
         */
        public java.lang.String getEndColumn() {
          java.lang.Object ref = endColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              endColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string end_column = 10;</code>
         * @return The bytes for endColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getEndColumnBytes() {
          java.lang.Object ref = endColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            endColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string end_column = 10;</code>
         * @param value The endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000100;
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 10;</code>
         * @return This builder for chaining.
         */
        public Builder clearEndColumn() {
          endColumn_ = getDefaultInstance().getEndColumn();
          bitField0_ = (bitField0_ & ~0x00000100);
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 10;</code>
         * @param value The bytes for endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000100;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableInBatchGetRowRequest>() {
        @java.lang.Override
        public TableInBatchGetRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BatchGetRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> 
          getTablesList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getTables(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      int getTablesCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder> 
          getTablesOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder getTablesOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest}
     */
    public static final class BatchGetRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest)
        BatchGetRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BatchGetRowRequest.class.getName());
      }
      // Use BatchGetRowRequest.newBuilder() to construct.
      private BatchGetRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BatchGetRowRequest() {
        tables_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.Builder.class);
      }
  
      public static final int TABLES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> tables_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> getTablesList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder> 
          getTablesOrBuilderList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public int getTablesCount() {
        return tables_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getTables(int index) {
        return tables_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder getTablesOrBuilder(
          int index) {
        return tables_.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;
  
        for (int i = 0; i < getTablesCount(); i++) {
          if (!getTables(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tables_.size(); i++) {
          output.writeMessage(1, tables_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < tables_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, tables_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest) obj;
  
        if (!getTablesList()
            .equals(other.getTablesList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTablesCount() > 0) {
          hash = (37 * hash) + TABLES_FIELD_NUMBER;
          hash = (53 * hash) + getTablesList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
          } else {
            tables_ = null;
            tablesBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest result) {
          if (tablesBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              tables_ = java.util.Collections.unmodifiableList(tables_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.tables_ = tables_;
          } else {
            result.tables_ = tablesBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest result) {
          int from_bitField0_ = bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest.getDefaultInstance()) return this;
          if (tablesBuilder_ == null) {
            if (!other.tables_.isEmpty()) {
              if (tables_.isEmpty()) {
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTablesIsMutable();
                tables_.addAll(other.tables_);
              }
              onChanged();
            }
          } else {
            if (!other.tables_.isEmpty()) {
              if (tablesBuilder_.isEmpty()) {
                tablesBuilder_.dispose();
                tablesBuilder_ = null;
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
                tablesBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getTablesFieldBuilder() : null;
              } else {
                tablesBuilder_.addAllMessages(other.tables_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getTablesCount(); i++) {
            if (!getTables(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.parser(),
                          extensionRegistry);
                  if (tablesBuilder_ == null) {
                    ensureTablesIsMutable();
                    tables_.add(m);
                  } else {
                    tablesBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> tables_ =
          java.util.Collections.emptyList();
        private void ensureTablesIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            tables_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest>(tables_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder> tablesBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> getTablesList() {
          if (tablesBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tables_);
          } else {
            return tablesBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public int getTablesCount() {
          if (tablesBuilder_ == null) {
            return tables_.size();
          } else {
            return tablesBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest getTables(int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);
          } else {
            return tablesBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.set(index, value);
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.set(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder addTables(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(index, value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder addTables(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder addAllTables(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest> values) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tables_);
            onChanged();
          } else {
            tablesBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder clearTables() {
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            tablesBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public Builder removeTables(int index) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.remove(index);
            onChanged();
          } else {
            tablesBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder getTablesBuilder(
            int index) {
          return getTablesFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder getTablesOrBuilder(
            int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);  } else {
            return tablesBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder> 
             getTablesOrBuilderList() {
          if (tablesBuilder_ != null) {
            return tablesBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tables_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder addTablesBuilder() {
          return getTablesFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder addTablesBuilder(
            int index) {
          return getTablesFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowRequest tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder> 
             getTablesBuilderList() {
          return getTablesFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder> 
            getTablesFieldBuilder() {
          if (tablesBuilder_ == null) {
            tablesBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowRequestOrBuilder>(
                    tables_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            tables_ = null;
          }
          return tablesBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BatchGetRowRequest>() {
        @java.lang.Override
        public BatchGetRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface RowInBatchGetRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      boolean hasIsOk();
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      boolean getIsOk();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      boolean hasError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bytes row = 4;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>optional bytes row = 4;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
  
      /**
       * <code>optional bytes next_token = 5;</code>
       * @return Whether the nextToken field is set.
       */
      boolean hasNextToken();
      /**
       * <code>optional bytes next_token = 5;</code>
       * @return The nextToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse}
     */
    public static final class RowInBatchGetRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse)
        RowInBatchGetRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowInBatchGetRowResponse.class.getName());
      }
      // Use RowInBatchGetRowResponse.newBuilder() to construct.
      private RowInBatchGetRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private RowInBatchGetRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int IS_OK_FIELD_NUMBER = 1;
      private boolean isOk_ = false;
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      @java.lang.Override
      public boolean hasIsOk() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      @java.lang.Override
      public boolean getIsOk() {
        return isOk_;
      }
  
      public static final int ERROR_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      @java.lang.Override
      public boolean hasError() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
  
      public static final int CONSUMED_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes row = 4;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes row = 4;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      public static final int NEXT_TOKEN_FIELD_NUMBER = 5;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes next_token = 5;</code>
       * @return Whether the nextToken field is set.
       */
      @java.lang.Override
      public boolean hasNextToken() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional bytes next_token = 5;</code>
       * @return The nextToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
        return nextToken_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasIsOk()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasError()) {
          if (!getError().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasConsumed()) {
          if (!getConsumed().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getConsumed());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(4, row_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeBytes(5, nextToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getConsumed());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, row_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, nextToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse) obj;
  
        if (hasIsOk() != other.hasIsOk()) return false;
        if (hasIsOk()) {
          if (getIsOk()
              != other.getIsOk()) return false;
        }
        if (hasError() != other.hasError()) return false;
        if (hasError()) {
          if (!getError()
              .equals(other.getError())) return false;
        }
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (hasNextToken() != other.hasNextToken()) return false;
        if (hasNextToken()) {
          if (!getNextToken()
              .equals(other.getNextToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasIsOk()) {
          hash = (37 * hash) + IS_OK_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIsOk());
        }
        if (hasError()) {
          hash = (37 * hash) + ERROR_FIELD_NUMBER;
          hash = (53 * hash) + getError().hashCode();
        }
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        if (hasNextToken()) {
          hash = (37 * hash) + NEXT_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getNextToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getErrorFieldBuilder();
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          isOk_ = false;
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.isOk_ = isOk_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.error_ = errorBuilder_ == null
                ? error_
                : errorBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.nextToken_ = nextToken_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.getDefaultInstance()) return this;
          if (other.hasIsOk()) {
            setIsOk(other.getIsOk());
          }
          if (other.hasError()) {
            mergeError(other.getError());
          }
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          if (other.hasNextToken()) {
            setNextToken(other.getNextToken());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasIsOk()) {
            return false;
          }
          if (hasError()) {
            if (!getError().isInitialized()) {
              return false;
            }
          }
          if (hasConsumed()) {
            if (!getConsumed().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  isOk_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 18: {
                  input.readMessage(
                      getErrorFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  nextToken_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean isOk_ ;
        /**
         * <code>required bool is_ok = 1;</code>
         * @return Whether the isOk field is set.
         */
        @java.lang.Override
        public boolean hasIsOk() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return The isOk.
         */
        @java.lang.Override
        public boolean getIsOk() {
          return isOk_;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @param value The isOk to set.
         * @return This builder for chaining.
         */
        public Builder setIsOk(boolean value) {
  
          isOk_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearIsOk() {
          bitField0_ = (bitField0_ & ~0x00000001);
          isOk_ = false;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> errorBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return Whether the error field is set.
         */
        public boolean hasError() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return The error.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
          if (errorBuilder_ == null) {
            return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          } else {
            return errorBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            error_ = value;
          } else {
            errorBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder builderForValue) {
          if (errorBuilder_ == null) {
            error_ = builderForValue.build();
          } else {
            errorBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder mergeError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              error_ != null &&
              error_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance()) {
              getErrorBuilder().mergeFrom(value);
            } else {
              error_ = value;
            }
          } else {
            errorBuilder_.mergeFrom(value);
          }
          if (error_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder clearError() {
          bitField0_ = (bitField0_ & ~0x00000002);
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder getErrorBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getErrorFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
          if (errorBuilder_ != null) {
            return errorBuilder_.getMessageOrBuilder();
          } else {
            return error_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> 
            getErrorFieldBuilder() {
          if (errorBuilder_ == null) {
            errorBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder>(
                    getError(),
                    getParentForChildren(),
                    isClean());
            error_ = null;
          }
          return errorBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000004);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes row = 4;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000008);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes next_token = 5;</code>
         * @return Whether the nextToken field is set.
         */
        @java.lang.Override
        public boolean hasNextToken() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional bytes next_token = 5;</code>
         * @return The nextToken.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
          return nextToken_;
        }
        /**
         * <code>optional bytes next_token = 5;</code>
         * @param value The nextToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextToken_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes next_token = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextToken() {
          bitField0_ = (bitField0_ & ~0x00000010);
          nextToken_ = getDefaultInstance().getNextToken();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchGetRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<RowInBatchGetRowResponse>() {
        @java.lang.Override
        public RowInBatchGetRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchGetRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchGetRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableInBatchGetRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> 
          getRowsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getRows(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      int getRowsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder> 
          getRowsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder getRowsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse}
     */
    public static final class TableInBatchGetRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse)
        TableInBatchGetRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableInBatchGetRowResponse.class.getName());
      }
      // Use TableInBatchGetRowResponse.newBuilder() to construct.
      private TableInBatchGetRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableInBatchGetRowResponse() {
        tableName_ = "";
        rows_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> rows_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> getRowsList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder> 
          getRowsOrBuilderList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public int getRowsCount() {
        return rows_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getRows(int index) {
        return rows_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder getRowsOrBuilder(
          int index) {
        return rows_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getRowsCount(); i++) {
          if (!getRows(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          output.writeMessage(2, rows_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, rows_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getRowsList()
            .equals(other.getRowsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getRowsCount() > 0) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRowsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
          } else {
            rows_ = null;
            rowsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse result) {
          if (rowsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              rows_ = java.util.Collections.unmodifiableList(rows_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.rows_ = rows_;
          } else {
            result.rows_ = rowsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (rowsBuilder_ == null) {
            if (!other.rows_.isEmpty()) {
              if (rows_.isEmpty()) {
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureRowsIsMutable();
                rows_.addAll(other.rows_);
              }
              onChanged();
            }
          } else {
            if (!other.rows_.isEmpty()) {
              if (rowsBuilder_.isEmpty()) {
                rowsBuilder_.dispose();
                rowsBuilder_ = null;
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
                rowsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getRowsFieldBuilder() : null;
              } else {
                rowsBuilder_.addAllMessages(other.rows_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getRowsCount(); i++) {
            if (!getRows(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.parser(),
                          extensionRegistry);
                  if (rowsBuilder_ == null) {
                    ensureRowsIsMutable();
                    rows_.add(m);
                  } else {
                    rowsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> rows_ =
          java.util.Collections.emptyList();
        private void ensureRowsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            rows_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse>(rows_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder> rowsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> getRowsList() {
          if (rowsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(rows_);
          } else {
            return rowsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public int getRowsCount() {
          if (rowsBuilder_ == null) {
            return rows_.size();
          } else {
            return rowsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse getRows(int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);
          } else {
            return rowsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.set(index, value);
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.set(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder addRows(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(index, value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder addRows(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder addAllRows(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse> values) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, rows_);
            onChanged();
          } else {
            rowsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder clearRows() {
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            rowsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public Builder removeRows(int index) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.remove(index);
            onChanged();
          } else {
            rowsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder getRowsBuilder(
            int index) {
          return getRowsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder getRowsOrBuilder(
            int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);  } else {
            return rowsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder> 
             getRowsOrBuilderList() {
          if (rowsBuilder_ != null) {
            return rowsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(rows_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder addRowsBuilder() {
          return getRowsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder addRowsBuilder(
            int index) {
          return getRowsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchGetRowResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder> 
             getRowsBuilderList() {
          return getRowsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder> 
            getRowsFieldBuilder() {
          if (rowsBuilder_ == null) {
            rowsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchGetRowResponseOrBuilder>(
                    rows_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            rows_ = null;
          }
          return rowsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableInBatchGetRowResponse>() {
        @java.lang.Override
        public TableInBatchGetRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchGetRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BatchGetRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> 
          getTablesList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getTables(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      int getTablesCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder> 
          getTablesOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder getTablesOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse}
     */
    public static final class BatchGetRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse)
        BatchGetRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BatchGetRowResponse.class.getName());
      }
      // Use BatchGetRowResponse.newBuilder() to construct.
      private BatchGetRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BatchGetRowResponse() {
        tables_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.Builder.class);
      }
  
      public static final int TABLES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> tables_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> getTablesList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder> 
          getTablesOrBuilderList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public int getTablesCount() {
        return tables_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getTables(int index) {
        return tables_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder getTablesOrBuilder(
          int index) {
        return tables_.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;
  
        for (int i = 0; i < getTablesCount(); i++) {
          if (!getTables(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tables_.size(); i++) {
          output.writeMessage(1, tables_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < tables_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, tables_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse) obj;
  
        if (!getTablesList()
            .equals(other.getTablesList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTablesCount() > 0) {
          hash = (37 * hash) + TABLES_FIELD_NUMBER;
          hash = (53 * hash) + getTablesList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
          } else {
            tables_ = null;
            tablesBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse result) {
          if (tablesBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              tables_ = java.util.Collections.unmodifiableList(tables_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.tables_ = tables_;
          } else {
            result.tables_ = tablesBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse result) {
          int from_bitField0_ = bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse.getDefaultInstance()) return this;
          if (tablesBuilder_ == null) {
            if (!other.tables_.isEmpty()) {
              if (tables_.isEmpty()) {
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTablesIsMutable();
                tables_.addAll(other.tables_);
              }
              onChanged();
            }
          } else {
            if (!other.tables_.isEmpty()) {
              if (tablesBuilder_.isEmpty()) {
                tablesBuilder_.dispose();
                tablesBuilder_ = null;
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
                tablesBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getTablesFieldBuilder() : null;
              } else {
                tablesBuilder_.addAllMessages(other.tables_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getTablesCount(); i++) {
            if (!getTables(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.parser(),
                          extensionRegistry);
                  if (tablesBuilder_ == null) {
                    ensureTablesIsMutable();
                    tables_.add(m);
                  } else {
                    tablesBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> tables_ =
          java.util.Collections.emptyList();
        private void ensureTablesIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            tables_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse>(tables_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder> tablesBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> getTablesList() {
          if (tablesBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tables_);
          } else {
            return tablesBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public int getTablesCount() {
          if (tablesBuilder_ == null) {
            return tables_.size();
          } else {
            return tablesBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse getTables(int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);
          } else {
            return tablesBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.set(index, value);
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.set(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder addTables(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(index, value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder addTables(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder addAllTables(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse> values) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tables_);
            onChanged();
          } else {
            tablesBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder clearTables() {
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            tablesBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public Builder removeTables(int index) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.remove(index);
            onChanged();
          } else {
            tablesBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder getTablesBuilder(
            int index) {
          return getTablesFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder getTablesOrBuilder(
            int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);  } else {
            return tablesBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder> 
             getTablesOrBuilderList() {
          if (tablesBuilder_ != null) {
            return tablesBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tables_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder addTablesBuilder() {
          return getTablesFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder addTablesBuilder(
            int index) {
          return getTablesFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchGetRowResponse tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder> 
             getTablesBuilderList() {
          return getTablesFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder> 
            getTablesFieldBuilder() {
          if (tablesBuilder_ == null) {
            tablesBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchGetRowResponseOrBuilder>(
                    tables_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            tables_ = null;
          }
          return tablesBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BatchGetRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BatchGetRowResponse>() {
        @java.lang.Override
        public BatchGetRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchGetRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchGetRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface RowInBatchWriteRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return Whether the type field is set.
       */
      boolean hasType();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return The type.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType();
  
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      boolean hasRowChange();
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      boolean hasCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      boolean hasReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest}
     */
    public static final class RowInBatchWriteRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest)
        RowInBatchWriteRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowInBatchWriteRowRequest.class.getName());
      }
      // Use RowInBatchWriteRowRequest.newBuilder() to construct.
      private RowInBatchWriteRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private RowInBatchWriteRowRequest() {
        type_ = 1;
        rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TYPE_FIELD_NUMBER = 1;
      private int type_ = 1;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return Whether the type field is set.
       */
      @java.lang.Override public boolean hasType() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return The type.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(type_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.PUT : result;
      }
  
      public static final int ROW_CHANGE_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      @java.lang.Override
      public boolean hasRowChange() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
        return rowChange_;
      }
  
      public static final int CONDITION_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return Whether the condition field is set.
       */
      @java.lang.Override
      public boolean hasCondition() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       * @return The condition.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
        return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
      }
  
      public static final int RETURN_CONTENT_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return Whether the returnContent field is set.
       */
      @java.lang.Override
      public boolean hasReturnContent() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       * @return The returnContent.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
        return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRowChange()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCondition()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getCondition().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeEnum(1, type_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, rowChange_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeMessage(4, getReturnContent());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, type_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rowChange_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getCondition());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getReturnContent());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest) obj;
  
        if (hasType() != other.hasType()) return false;
        if (hasType()) {
          if (type_ != other.type_) return false;
        }
        if (hasRowChange() != other.hasRowChange()) return false;
        if (hasRowChange()) {
          if (!getRowChange()
              .equals(other.getRowChange())) return false;
        }
        if (hasCondition() != other.hasCondition()) return false;
        if (hasCondition()) {
          if (!getCondition()
              .equals(other.getCondition())) return false;
        }
        if (hasReturnContent() != other.hasReturnContent()) return false;
        if (hasReturnContent()) {
          if (!getReturnContent()
              .equals(other.getReturnContent())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasType()) {
          hash = (37 * hash) + TYPE_FIELD_NUMBER;
          hash = (53 * hash) + type_;
        }
        if (hasRowChange()) {
          hash = (37 * hash) + ROW_CHANGE_FIELD_NUMBER;
          hash = (53 * hash) + getRowChange().hashCode();
        }
        if (hasCondition()) {
          hash = (37 * hash) + CONDITION_FIELD_NUMBER;
          hash = (53 * hash) + getCondition().hashCode();
        }
        if (hasReturnContent()) {
          hash = (37 * hash) + RETURN_CONTENT_FIELD_NUMBER;
          hash = (53 * hash) + getReturnContent().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConditionFieldBuilder();
            getReturnContentFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          type_ = 1;
          rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.type_ = type_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rowChange_ = rowChange_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.condition_ = conditionBuilder_ == null
                ? condition_
                : conditionBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.returnContent_ = returnContentBuilder_ == null
                ? returnContent_
                : returnContentBuilder_.build();
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.getDefaultInstance()) return this;
          if (other.hasType()) {
            setType(other.getType());
          }
          if (other.hasRowChange()) {
            setRowChange(other.getRowChange());
          }
          if (other.hasCondition()) {
            mergeCondition(other.getCondition());
          }
          if (other.hasReturnContent()) {
            mergeReturnContent(other.getReturnContent());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasType()) {
            return false;
          }
          if (!hasRowChange()) {
            return false;
          }
          if (!hasCondition()) {
            return false;
          }
          if (!getCondition().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(1, tmpRaw);
                  } else {
                    type_ = tmpRaw;
                    bitField0_ |= 0x00000001;
                  }
                  break;
                } // case 8
                case 18: {
                  rowChange_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConditionFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getReturnContentFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int type_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return Whether the type field is set.
         */
        @java.lang.Override public boolean hasType() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return The type.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(type_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.PUT : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @param value The type to set.
         * @return This builder for chaining.
         */
        public Builder setType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          type_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000001);
          type_ = 1;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes row_change = 2;</code>
         * @return Whether the rowChange field is set.
         */
        @java.lang.Override
        public boolean hasRowChange() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return The rowChange.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
          return rowChange_;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @param value The rowChange to set.
         * @return This builder for chaining.
         */
        public Builder setRowChange(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rowChange_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRowChange() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rowChange_ = getDefaultInstance().getRowChange();
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition condition_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> conditionBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return Whether the condition field is set.
         */
        public boolean hasCondition() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         * @return The condition.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition getCondition() {
          if (conditionBuilder_ == null) {
            return condition_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          } else {
            return conditionBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            condition_ = value;
          } else {
            conditionBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder setCondition(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder builderForValue) {
          if (conditionBuilder_ == null) {
            condition_ = builderForValue.build();
          } else {
            conditionBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder mergeCondition(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition value) {
          if (conditionBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              condition_ != null &&
              condition_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance()) {
              getConditionBuilder().mergeFrom(value);
            } else {
              condition_ = value;
            }
          } else {
            conditionBuilder_.mergeFrom(value);
          }
          if (condition_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public Builder clearCondition() {
          bitField0_ = (bitField0_ & ~0x00000004);
          condition_ = null;
          if (conditionBuilder_ != null) {
            conditionBuilder_.dispose();
            conditionBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder getConditionBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConditionFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder getConditionOrBuilder() {
          if (conditionBuilder_ != null) {
            return conditionBuilder_.getMessageOrBuilder();
          } else {
            return condition_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.getDefaultInstance() : condition_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Condition condition = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder> 
            getConditionFieldBuilder() {
          if (conditionBuilder_ == null) {
            conditionBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Condition.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConditionOrBuilder>(
                    getCondition(),
                    getParentForChildren(),
                    isClean());
            condition_ = null;
          }
          return conditionBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent returnContent_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> returnContentBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return Whether the returnContent field is set.
         */
        public boolean hasReturnContent() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         * @return The returnContent.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent getReturnContent() {
          if (returnContentBuilder_ == null) {
            return returnContent_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          } else {
            return returnContentBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            returnContent_ = value;
          } else {
            returnContentBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder setReturnContent(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder builderForValue) {
          if (returnContentBuilder_ == null) {
            returnContent_ = builderForValue.build();
          } else {
            returnContentBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder mergeReturnContent(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent value) {
          if (returnContentBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              returnContent_ != null &&
              returnContent_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance()) {
              getReturnContentBuilder().mergeFrom(value);
            } else {
              returnContent_ = value;
            }
          } else {
            returnContentBuilder_.mergeFrom(value);
          }
          if (returnContent_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public Builder clearReturnContent() {
          bitField0_ = (bitField0_ & ~0x00000008);
          returnContent_ = null;
          if (returnContentBuilder_ != null) {
            returnContentBuilder_.dispose();
            returnContentBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder getReturnContentBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getReturnContentFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder getReturnContentOrBuilder() {
          if (returnContentBuilder_ != null) {
            return returnContentBuilder_.getMessageOrBuilder();
          } else {
            return returnContent_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.getDefaultInstance() : returnContent_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReturnContent return_content = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder> 
            getReturnContentFieldBuilder() {
          if (returnContentBuilder_ == null) {
            returnContentBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContent.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReturnContentOrBuilder>(
                    getReturnContent(),
                    getParentForChildren(),
                    isClean());
            returnContent_ = null;
          }
          return returnContentBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<RowInBatchWriteRowRequest>() {
        @java.lang.Override
        public RowInBatchWriteRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableInBatchWriteRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> 
          getRowsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getRows(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      int getRowsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder> 
          getRowsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder getRowsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest}
     */
    public static final class TableInBatchWriteRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest)
        TableInBatchWriteRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableInBatchWriteRowRequest.class.getName());
      }
      // Use TableInBatchWriteRowRequest.newBuilder() to construct.
      private TableInBatchWriteRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableInBatchWriteRowRequest() {
        tableName_ = "";
        rows_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> rows_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> getRowsList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder> 
          getRowsOrBuilderList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      @java.lang.Override
      public int getRowsCount() {
        return rows_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getRows(int index) {
        return rows_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder getRowsOrBuilder(
          int index) {
        return rows_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getRowsCount(); i++) {
          if (!getRows(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          output.writeMessage(2, rows_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, rows_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getRowsList()
            .equals(other.getRowsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getRowsCount() > 0) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRowsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
          } else {
            rows_ = null;
            rowsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest result) {
          if (rowsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              rows_ = java.util.Collections.unmodifiableList(rows_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.rows_ = rows_;
          } else {
            result.rows_ = rowsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (rowsBuilder_ == null) {
            if (!other.rows_.isEmpty()) {
              if (rows_.isEmpty()) {
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureRowsIsMutable();
                rows_.addAll(other.rows_);
              }
              onChanged();
            }
          } else {
            if (!other.rows_.isEmpty()) {
              if (rowsBuilder_.isEmpty()) {
                rowsBuilder_.dispose();
                rowsBuilder_ = null;
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
                rowsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getRowsFieldBuilder() : null;
              } else {
                rowsBuilder_.addAllMessages(other.rows_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getRowsCount(); i++) {
            if (!getRows(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.parser(),
                          extensionRegistry);
                  if (rowsBuilder_ == null) {
                    ensureRowsIsMutable();
                    rows_.add(m);
                  } else {
                    rowsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> rows_ =
          java.util.Collections.emptyList();
        private void ensureRowsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            rows_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest>(rows_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder> rowsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> getRowsList() {
          if (rowsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(rows_);
          } else {
            return rowsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public int getRowsCount() {
          if (rowsBuilder_ == null) {
            return rows_.size();
          } else {
            return rowsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest getRows(int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);
          } else {
            return rowsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.set(index, value);
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.set(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder addRows(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(index, value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder addRows(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder addAllRows(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest> values) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, rows_);
            onChanged();
          } else {
            rowsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder clearRows() {
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            rowsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public Builder removeRows(int index) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.remove(index);
            onChanged();
          } else {
            rowsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder getRowsBuilder(
            int index) {
          return getRowsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder getRowsOrBuilder(
            int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);  } else {
            return rowsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder> 
             getRowsOrBuilderList() {
          if (rowsBuilder_ != null) {
            return rowsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(rows_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder addRowsBuilder() {
          return getRowsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder addRowsBuilder(
            int index) {
          return getRowsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowRequest rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder> 
             getRowsBuilderList() {
          return getRowsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder> 
            getRowsFieldBuilder() {
          if (rowsBuilder_ == null) {
            rowsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowRequestOrBuilder>(
                    rows_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            rows_ = null;
          }
          return rowsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableInBatchWriteRowRequest>() {
        @java.lang.Override
        public TableInBatchWriteRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BatchWriteRowRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> 
          getTablesList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getTables(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      int getTablesCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder> 
          getTablesOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder getTablesOrBuilder(
          int index);
  
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
  
      /**
       * <code>optional bool is_atomic = 3;</code>
       * @return Whether the isAtomic field is set.
       */
      boolean hasIsAtomic();
      /**
       * <code>optional bool is_atomic = 3;</code>
       * @return The isAtomic.
       */
      boolean getIsAtomic();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest}
     */
    public static final class BatchWriteRowRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest)
        BatchWriteRowRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BatchWriteRowRequest.class.getName());
      }
      // Use BatchWriteRowRequest.newBuilder() to construct.
      private BatchWriteRowRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BatchWriteRowRequest() {
        tables_ = java.util.Collections.emptyList();
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> tables_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> getTablesList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder> 
          getTablesOrBuilderList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public int getTablesCount() {
        return tables_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getTables(int index) {
        return tables_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder getTablesOrBuilder(
          int index) {
        return tables_.get(index);
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 2;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int IS_ATOMIC_FIELD_NUMBER = 3;
      private boolean isAtomic_ = false;
      /**
       * <code>optional bool is_atomic = 3;</code>
       * @return Whether the isAtomic field is set.
       */
      @java.lang.Override
      public boolean hasIsAtomic() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bool is_atomic = 3;</code>
       * @return The isAtomic.
       */
      @java.lang.Override
      public boolean getIsAtomic() {
        return isAtomic_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        for (int i = 0; i < getTablesCount(); i++) {
          if (!getTables(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tables_.size(); i++) {
          output.writeMessage(1, tables_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, transactionId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBool(3, isAtomic_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < tables_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, tables_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, transactionId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(3, isAtomic_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest) obj;
  
        if (!getTablesList()
            .equals(other.getTablesList())) return false;
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (hasIsAtomic() != other.hasIsAtomic()) return false;
        if (hasIsAtomic()) {
          if (getIsAtomic()
              != other.getIsAtomic()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTablesCount() > 0) {
          hash = (37 * hash) + TABLES_FIELD_NUMBER;
          hash = (53 * hash) + getTablesList().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        if (hasIsAtomic()) {
          hash = (37 * hash) + IS_ATOMIC_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIsAtomic());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
          } else {
            tables_ = null;
            tablesBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          transactionId_ = "";
          isAtomic_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest result) {
          if (tablesBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              tables_ = java.util.Collections.unmodifiableList(tables_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.tables_ = tables_;
          } else {
            result.tables_ = tablesBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.isAtomic_ = isAtomic_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest.getDefaultInstance()) return this;
          if (tablesBuilder_ == null) {
            if (!other.tables_.isEmpty()) {
              if (tables_.isEmpty()) {
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTablesIsMutable();
                tables_.addAll(other.tables_);
              }
              onChanged();
            }
          } else {
            if (!other.tables_.isEmpty()) {
              if (tablesBuilder_.isEmpty()) {
                tablesBuilder_.dispose();
                tablesBuilder_ = null;
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
                tablesBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getTablesFieldBuilder() : null;
              } else {
                tablesBuilder_.addAllMessages(other.tables_);
              }
            }
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasIsAtomic()) {
            setIsAtomic(other.getIsAtomic());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getTablesCount(); i++) {
            if (!getTables(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.parser(),
                          extensionRegistry);
                  if (tablesBuilder_ == null) {
                    ensureTablesIsMutable();
                    tables_.add(m);
                  } else {
                    tablesBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                case 18: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  isAtomic_ = input.readBool();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> tables_ =
          java.util.Collections.emptyList();
        private void ensureTablesIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            tables_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest>(tables_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder> tablesBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> getTablesList() {
          if (tablesBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tables_);
          } else {
            return tablesBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public int getTablesCount() {
          if (tablesBuilder_ == null) {
            return tables_.size();
          } else {
            return tablesBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest getTables(int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);
          } else {
            return tablesBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.set(index, value);
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.set(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder addTables(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(index, value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder addTables(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder addAllTables(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest> values) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tables_);
            onChanged();
          } else {
            tablesBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder clearTables() {
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            tablesBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public Builder removeTables(int index) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.remove(index);
            onChanged();
          } else {
            tablesBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder getTablesBuilder(
            int index) {
          return getTablesFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder getTablesOrBuilder(
            int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);  } else {
            return tablesBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder> 
             getTablesOrBuilderList() {
          if (tablesBuilder_ != null) {
            return tablesBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tables_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder addTablesBuilder() {
          return getTablesFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder addTablesBuilder(
            int index) {
          return getTablesFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowRequest tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder> 
             getTablesBuilderList() {
          return getTablesFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder> 
            getTablesFieldBuilder() {
          if (tablesBuilder_ == null) {
            tablesBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowRequestOrBuilder>(
                    tables_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            tables_ = null;
          }
          return tablesBuilder_;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 2;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string transaction_id = 2;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 2;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 2;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 2;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private boolean isAtomic_ ;
        /**
         * <code>optional bool is_atomic = 3;</code>
         * @return Whether the isAtomic field is set.
         */
        @java.lang.Override
        public boolean hasIsAtomic() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bool is_atomic = 3;</code>
         * @return The isAtomic.
         */
        @java.lang.Override
        public boolean getIsAtomic() {
          return isAtomic_;
        }
        /**
         * <code>optional bool is_atomic = 3;</code>
         * @param value The isAtomic to set.
         * @return This builder for chaining.
         */
        public Builder setIsAtomic(boolean value) {
  
          isAtomic_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool is_atomic = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearIsAtomic() {
          bitField0_ = (bitField0_ & ~0x00000004);
          isAtomic_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BatchWriteRowRequest>() {
        @java.lang.Override
        public BatchWriteRowRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface RowInBatchWriteRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      boolean hasIsOk();
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      boolean getIsOk();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      boolean hasError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bytes row = 4;</code>
       * @return Whether the row field is set.
       */
      boolean hasRow();
      /**
       * <code>optional bytes row = 4;</code>
       * @return The row.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse}
     */
    public static final class RowInBatchWriteRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse)
        RowInBatchWriteRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowInBatchWriteRowResponse.class.getName());
      }
      // Use RowInBatchWriteRowResponse.newBuilder() to construct.
      private RowInBatchWriteRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private RowInBatchWriteRowResponse() {
        row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int IS_OK_FIELD_NUMBER = 1;
      private boolean isOk_ = false;
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      @java.lang.Override
      public boolean hasIsOk() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      @java.lang.Override
      public boolean getIsOk() {
        return isOk_;
      }
  
      public static final int ERROR_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      @java.lang.Override
      public boolean hasError() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
  
      public static final int CONSUMED_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROW_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes row = 4;</code>
       * @return Whether the row field is set.
       */
      @java.lang.Override
      public boolean hasRow() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes row = 4;</code>
       * @return The row.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
        return row_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasIsOk()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasError()) {
          if (!getError().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasConsumed()) {
          if (!getConsumed().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getConsumed());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(4, row_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getConsumed());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, row_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse) obj;
  
        if (hasIsOk() != other.hasIsOk()) return false;
        if (hasIsOk()) {
          if (getIsOk()
              != other.getIsOk()) return false;
        }
        if (hasError() != other.hasError()) return false;
        if (hasError()) {
          if (!getError()
              .equals(other.getError())) return false;
        }
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRow() != other.hasRow()) return false;
        if (hasRow()) {
          if (!getRow()
              .equals(other.getRow())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasIsOk()) {
          hash = (37 * hash) + IS_OK_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIsOk());
        }
        if (hasError()) {
          hash = (37 * hash) + ERROR_FIELD_NUMBER;
          hash = (53 * hash) + getError().hashCode();
        }
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRow()) {
          hash = (37 * hash) + ROW_FIELD_NUMBER;
          hash = (53 * hash) + getRow().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getErrorFieldBuilder();
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          isOk_ = false;
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.isOk_ = isOk_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.error_ = errorBuilder_ == null
                ? error_
                : errorBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.row_ = row_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.getDefaultInstance()) return this;
          if (other.hasIsOk()) {
            setIsOk(other.getIsOk());
          }
          if (other.hasError()) {
            mergeError(other.getError());
          }
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRow()) {
            setRow(other.getRow());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasIsOk()) {
            return false;
          }
          if (hasError()) {
            if (!getError().isInitialized()) {
              return false;
            }
          }
          if (hasConsumed()) {
            if (!getConsumed().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  isOk_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 18: {
                  input.readMessage(
                      getErrorFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  row_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean isOk_ ;
        /**
         * <code>required bool is_ok = 1;</code>
         * @return Whether the isOk field is set.
         */
        @java.lang.Override
        public boolean hasIsOk() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return The isOk.
         */
        @java.lang.Override
        public boolean getIsOk() {
          return isOk_;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @param value The isOk to set.
         * @return This builder for chaining.
         */
        public Builder setIsOk(boolean value) {
  
          isOk_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearIsOk() {
          bitField0_ = (bitField0_ & ~0x00000001);
          isOk_ = false;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> errorBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return Whether the error field is set.
         */
        public boolean hasError() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return The error.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
          if (errorBuilder_ == null) {
            return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          } else {
            return errorBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            error_ = value;
          } else {
            errorBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder builderForValue) {
          if (errorBuilder_ == null) {
            error_ = builderForValue.build();
          } else {
            errorBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder mergeError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              error_ != null &&
              error_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance()) {
              getErrorBuilder().mergeFrom(value);
            } else {
              error_ = value;
            }
          } else {
            errorBuilder_.mergeFrom(value);
          }
          if (error_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder clearError() {
          bitField0_ = (bitField0_ & ~0x00000002);
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder getErrorBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getErrorFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
          if (errorBuilder_ != null) {
            return errorBuilder_.getMessageOrBuilder();
          } else {
            return error_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> 
            getErrorFieldBuilder() {
          if (errorBuilder_ == null) {
            errorBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder>(
                    getError(),
                    getParentForChildren(),
                    isClean());
            error_ = null;
          }
          return errorBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000004);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString row_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes row = 4;</code>
         * @return Whether the row field is set.
         */
        @java.lang.Override
        public boolean hasRow() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @return The row.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRow() {
          return row_;
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @param value The row to set.
         * @return This builder for chaining.
         */
        public Builder setRow(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          row_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes row = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearRow() {
          bitField0_ = (bitField0_ & ~0x00000008);
          row_ = getDefaultInstance().getRow();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<RowInBatchWriteRowResponse>() {
        @java.lang.Override
        public RowInBatchWriteRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBatchWriteRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableInBatchWriteRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> 
          getRowsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getRows(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      int getRowsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder> 
          getRowsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder getRowsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse}
     */
    public static final class TableInBatchWriteRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse)
        TableInBatchWriteRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableInBatchWriteRowResponse.class.getName());
      }
      // Use TableInBatchWriteRowResponse.newBuilder() to construct.
      private TableInBatchWriteRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableInBatchWriteRowResponse() {
        tableName_ = "";
        rows_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> rows_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> getRowsList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder> 
          getRowsOrBuilderList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public int getRowsCount() {
        return rows_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getRows(int index) {
        return rows_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder getRowsOrBuilder(
          int index) {
        return rows_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getRowsCount(); i++) {
          if (!getRows(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          output.writeMessage(2, rows_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, rows_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getRowsList()
            .equals(other.getRowsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getRowsCount() > 0) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRowsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
          } else {
            rows_ = null;
            rowsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse result) {
          if (rowsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              rows_ = java.util.Collections.unmodifiableList(rows_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.rows_ = rows_;
          } else {
            result.rows_ = rowsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (rowsBuilder_ == null) {
            if (!other.rows_.isEmpty()) {
              if (rows_.isEmpty()) {
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureRowsIsMutable();
                rows_.addAll(other.rows_);
              }
              onChanged();
            }
          } else {
            if (!other.rows_.isEmpty()) {
              if (rowsBuilder_.isEmpty()) {
                rowsBuilder_.dispose();
                rowsBuilder_ = null;
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
                rowsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getRowsFieldBuilder() : null;
              } else {
                rowsBuilder_.addAllMessages(other.rows_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getRowsCount(); i++) {
            if (!getRows(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.parser(),
                          extensionRegistry);
                  if (rowsBuilder_ == null) {
                    ensureRowsIsMutable();
                    rows_.add(m);
                  } else {
                    rowsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> rows_ =
          java.util.Collections.emptyList();
        private void ensureRowsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            rows_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse>(rows_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder> rowsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> getRowsList() {
          if (rowsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(rows_);
          } else {
            return rowsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public int getRowsCount() {
          if (rowsBuilder_ == null) {
            return rows_.size();
          } else {
            return rowsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse getRows(int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);
          } else {
            return rowsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.set(index, value);
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.set(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder addRows(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(index, value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder addRows(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder addAllRows(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse> values) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, rows_);
            onChanged();
          } else {
            rowsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder clearRows() {
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            rowsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public Builder removeRows(int index) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.remove(index);
            onChanged();
          } else {
            rowsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder getRowsBuilder(
            int index) {
          return getRowsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder getRowsOrBuilder(
            int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);  } else {
            return rowsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder> 
             getRowsOrBuilderList() {
          if (rowsBuilder_ != null) {
            return rowsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(rows_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder addRowsBuilder() {
          return getRowsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder addRowsBuilder(
            int index) {
          return getRowsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBatchWriteRowResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder> 
             getRowsBuilderList() {
          return getRowsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder> 
            getRowsFieldBuilder() {
          if (rowsBuilder_ == null) {
            rowsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBatchWriteRowResponseOrBuilder>(
                    rows_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            rows_ = null;
          }
          return rowsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableInBatchWriteRowResponse>() {
        @java.lang.Override
        public TableInBatchWriteRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableInBatchWriteRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BatchWriteRowResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> 
          getTablesList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getTables(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      int getTablesCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder> 
          getTablesOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder getTablesOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse}
     */
    public static final class BatchWriteRowResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse)
        BatchWriteRowResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BatchWriteRowResponse.class.getName());
      }
      // Use BatchWriteRowResponse.newBuilder() to construct.
      private BatchWriteRowResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BatchWriteRowResponse() {
        tables_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.Builder.class);
      }
  
      public static final int TABLES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> tables_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> getTablesList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder> 
          getTablesOrBuilderList() {
        return tables_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public int getTablesCount() {
        return tables_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getTables(int index) {
        return tables_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder getTablesOrBuilder(
          int index) {
        return tables_.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;
  
        for (int i = 0; i < getTablesCount(); i++) {
          if (!getTables(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tables_.size(); i++) {
          output.writeMessage(1, tables_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < tables_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, tables_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse) obj;
  
        if (!getTablesList()
            .equals(other.getTablesList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTablesCount() > 0) {
          hash = (37 * hash) + TABLES_FIELD_NUMBER;
          hash = (53 * hash) + getTablesList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
          } else {
            tables_ = null;
            tablesBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse result) {
          if (tablesBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              tables_ = java.util.Collections.unmodifiableList(tables_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.tables_ = tables_;
          } else {
            result.tables_ = tablesBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse result) {
          int from_bitField0_ = bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse.getDefaultInstance()) return this;
          if (tablesBuilder_ == null) {
            if (!other.tables_.isEmpty()) {
              if (tables_.isEmpty()) {
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTablesIsMutable();
                tables_.addAll(other.tables_);
              }
              onChanged();
            }
          } else {
            if (!other.tables_.isEmpty()) {
              if (tablesBuilder_.isEmpty()) {
                tablesBuilder_.dispose();
                tablesBuilder_ = null;
                tables_ = other.tables_;
                bitField0_ = (bitField0_ & ~0x00000001);
                tablesBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getTablesFieldBuilder() : null;
              } else {
                tablesBuilder_.addAllMessages(other.tables_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getTablesCount(); i++) {
            if (!getTables(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.parser(),
                          extensionRegistry);
                  if (tablesBuilder_ == null) {
                    ensureTablesIsMutable();
                    tables_.add(m);
                  } else {
                    tablesBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> tables_ =
          java.util.Collections.emptyList();
        private void ensureTablesIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            tables_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse>(tables_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder> tablesBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> getTablesList() {
          if (tablesBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tables_);
          } else {
            return tablesBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public int getTablesCount() {
          if (tablesBuilder_ == null) {
            return tables_.size();
          } else {
            return tablesBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse getTables(int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);
          } else {
            return tablesBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.set(index, value);
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder setTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.set(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder addTables(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse value) {
          if (tablesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTablesIsMutable();
            tables_.add(index, value);
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder addTables(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder addTables(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder builderForValue) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.add(index, builderForValue.build());
            onChanged();
          } else {
            tablesBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder addAllTables(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse> values) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tables_);
            onChanged();
          } else {
            tablesBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder clearTables() {
          if (tablesBuilder_ == null) {
            tables_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            tablesBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public Builder removeTables(int index) {
          if (tablesBuilder_ == null) {
            ensureTablesIsMutable();
            tables_.remove(index);
            onChanged();
          } else {
            tablesBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder getTablesBuilder(
            int index) {
          return getTablesFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder getTablesOrBuilder(
            int index) {
          if (tablesBuilder_ == null) {
            return tables_.get(index);  } else {
            return tablesBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder> 
             getTablesOrBuilderList() {
          if (tablesBuilder_ != null) {
            return tablesBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tables_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder addTablesBuilder() {
          return getTablesFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder addTablesBuilder(
            int index) {
          return getTablesFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableInBatchWriteRowResponse tables = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder> 
             getTablesBuilderList() {
          return getTablesFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder> 
            getTablesFieldBuilder() {
          if (tablesBuilder_ == null) {
            tablesBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableInBatchWriteRowResponseOrBuilder>(
                    tables_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            tables_ = null;
          }
          return tablesBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BatchWriteRowResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BatchWriteRowResponse>() {
        @java.lang.Override
        public BatchWriteRowResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BatchWriteRowResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BatchWriteRowResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetRangeRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
       * @return Whether the direction field is set.
       */
      boolean hasDirection();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
       * @return The direction.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction getDirection();
  
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      java.util.List<java.lang.String>
          getColumnsToGetList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      int getColumnsToGetCount();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      java.lang.String getColumnsToGet(int index);
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index);
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return Whether the timeRange field is set.
       */
      boolean hasTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return The timeRange.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder();
  
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return Whether the maxVersions field is set.
       */
      boolean hasMaxVersions();
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return The maxVersions.
       */
      int getMaxVersions();
  
      /**
       * <code>optional int32 limit = 6;</code>
       * @return Whether the limit field is set.
       */
      boolean hasLimit();
      /**
       * <code>optional int32 limit = 6;</code>
       * @return The limit.
       */
      int getLimit();
  
      /**
       * <code>required bytes inclusive_start_primary_key = 7;</code>
       * @return Whether the inclusiveStartPrimaryKey field is set.
       */
      boolean hasInclusiveStartPrimaryKey();
      /**
       * <code>required bytes inclusive_start_primary_key = 7;</code>
       * @return The inclusiveStartPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey();
  
      /**
       * <code>required bytes exclusive_end_primary_key = 8;</code>
       * @return Whether the exclusiveEndPrimaryKey field is set.
       */
      boolean hasExclusiveEndPrimaryKey();
      /**
       * <code>required bytes exclusive_end_primary_key = 8;</code>
       * @return The exclusiveEndPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey();
  
      /**
       * <code>optional bytes filter = 10;</code>
       * @return Whether the filter field is set.
       */
      boolean hasFilter();
      /**
       * <code>optional bytes filter = 10;</code>
       * @return The filter.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter();
  
      /**
       * <code>optional string start_column = 11;</code>
       * @return Whether the startColumn field is set.
       */
      boolean hasStartColumn();
      /**
       * <code>optional string start_column = 11;</code>
       * @return The startColumn.
       */
      java.lang.String getStartColumn();
      /**
       * <code>optional string start_column = 11;</code>
       * @return The bytes for startColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes();
  
      /**
       * <code>optional string end_column = 12;</code>
       * @return Whether the endColumn field is set.
       */
      boolean hasEndColumn();
      /**
       * <code>optional string end_column = 12;</code>
       * @return The endColumn.
       */
      java.lang.String getEndColumn();
      /**
       * <code>optional string end_column = 12;</code>
       * @return The bytes for endColumn.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes();
  
      /**
       * <code>optional bytes token = 13;</code>
       * @return Whether the token field is set.
       */
      boolean hasToken();
      /**
       * <code>optional bytes token = 13;</code>
       * @return The token.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken();
  
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest}
     */
    public static final class GetRangeRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest)
        GetRangeRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetRangeRequest.class.getName());
      }
      // Use GetRangeRequest.newBuilder() to construct.
      private GetRangeRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetRangeRequest() {
        tableName_ = "";
        direction_ = 0;
        columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        startColumn_ = "";
        endColumn_ = "";
        token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int DIRECTION_FIELD_NUMBER = 2;
      private int direction_ = 0;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
       * @return Whether the direction field is set.
       */
      @java.lang.Override public boolean hasDirection() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
       * @return The direction.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction getDirection() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction.forNumber(direction_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction.FORWARD : result;
      }
  
      public static final int COLUMNS_TO_GET_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return A list containing the columnsToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsToGetList() {
        return columnsToGet_;
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @return The count of columnsToGet.
       */
      public int getColumnsToGetCount() {
        return columnsToGet_.size();
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      public java.lang.String getColumnsToGet(int index) {
        return columnsToGet_.get(index);
      }
      /**
       * <code>repeated string columns_to_get = 3;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index) {
        return columnsToGet_.getByteString(index);
      }
  
      public static final int TIME_RANGE_FIELD_NUMBER = 4;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return Whether the timeRange field is set.
       */
      @java.lang.Override
      public boolean hasTimeRange() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       * @return The timeRange.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
        return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
      }
  
      public static final int MAX_VERSIONS_FIELD_NUMBER = 5;
      private int maxVersions_ = 0;
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return Whether the maxVersions field is set.
       */
      @java.lang.Override
      public boolean hasMaxVersions() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional int32 max_versions = 5;</code>
       * @return The maxVersions.
       */
      @java.lang.Override
      public int getMaxVersions() {
        return maxVersions_;
      }
  
      public static final int LIMIT_FIELD_NUMBER = 6;
      private int limit_ = 0;
      /**
       * <code>optional int32 limit = 6;</code>
       * @return Whether the limit field is set.
       */
      @java.lang.Override
      public boolean hasLimit() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional int32 limit = 6;</code>
       * @return The limit.
       */
      @java.lang.Override
      public int getLimit() {
        return limit_;
      }
  
      public static final int INCLUSIVE_START_PRIMARY_KEY_FIELD_NUMBER = 7;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes inclusive_start_primary_key = 7;</code>
       * @return Whether the inclusiveStartPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasInclusiveStartPrimaryKey() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>required bytes inclusive_start_primary_key = 7;</code>
       * @return The inclusiveStartPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey() {
        return inclusiveStartPrimaryKey_;
      }
  
      public static final int EXCLUSIVE_END_PRIMARY_KEY_FIELD_NUMBER = 8;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes exclusive_end_primary_key = 8;</code>
       * @return Whether the exclusiveEndPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasExclusiveEndPrimaryKey() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <code>required bytes exclusive_end_primary_key = 8;</code>
       * @return The exclusiveEndPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey() {
        return exclusiveEndPrimaryKey_;
      }
  
      public static final int FILTER_FIELD_NUMBER = 10;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes filter = 10;</code>
       * @return Whether the filter field is set.
       */
      @java.lang.Override
      public boolean hasFilter() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <code>optional bytes filter = 10;</code>
       * @return The filter.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
        return filter_;
      }
  
      public static final int START_COLUMN_FIELD_NUMBER = 11;
      @SuppressWarnings("serial")
      private volatile java.lang.Object startColumn_ = "";
      /**
       * <code>optional string start_column = 11;</code>
       * @return Whether the startColumn field is set.
       */
      @java.lang.Override
      public boolean hasStartColumn() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <code>optional string start_column = 11;</code>
       * @return The startColumn.
       */
      @java.lang.Override
      public java.lang.String getStartColumn() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            startColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string start_column = 11;</code>
       * @return The bytes for startColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStartColumnBytes() {
        java.lang.Object ref = startColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          startColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int END_COLUMN_FIELD_NUMBER = 12;
      @SuppressWarnings("serial")
      private volatile java.lang.Object endColumn_ = "";
      /**
       * <code>optional string end_column = 12;</code>
       * @return Whether the endColumn field is set.
       */
      @java.lang.Override
      public boolean hasEndColumn() {
        return ((bitField0_ & 0x00000200) != 0);
      }
      /**
       * <code>optional string end_column = 12;</code>
       * @return The endColumn.
       */
      @java.lang.Override
      public java.lang.String getEndColumn() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            endColumn_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string end_column = 12;</code>
       * @return The bytes for endColumn.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getEndColumnBytes() {
        java.lang.Object ref = endColumn_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          endColumn_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TOKEN_FIELD_NUMBER = 13;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes token = 13;</code>
       * @return Whether the token field is set.
       */
      @java.lang.Override
      public boolean hasToken() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * <code>optional bytes token = 13;</code>
       * @return The token.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken() {
        return token_;
      }
  
      public static final int TRANSACTION_ID_FIELD_NUMBER = 14;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string transaction_id = 14;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasDirection()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasInclusiveStartPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasExclusiveEndPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, direction_);
        }
        for (int i = 0; i < columnsToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, columnsToGet_.getRaw(i));
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(4, getTimeRange());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeInt32(5, maxVersions_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeInt32(6, limit_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          output.writeBytes(7, inclusiveStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          output.writeBytes(8, exclusiveEndPrimaryKey_);
        }
        if (((bitField0_ & 0x00000080) != 0)) {
          output.writeBytes(10, filter_);
        }
        if (((bitField0_ & 0x00000100) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 11, startColumn_);
        }
        if (((bitField0_ & 0x00000200) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 12, endColumn_);
        }
        if (((bitField0_ & 0x00000400) != 0)) {
          output.writeBytes(13, token_);
        }
        if (((bitField0_ & 0x00000800) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 14, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, direction_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnsToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnsToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsToGetList().size();
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, getTimeRange());
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(5, maxVersions_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(6, limit_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, inclusiveStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, exclusiveEndPrimaryKey_);
        }
        if (((bitField0_ & 0x00000080) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, filter_);
        }
        if (((bitField0_ & 0x00000100) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(11, startColumn_);
        }
        if (((bitField0_ & 0x00000200) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(12, endColumn_);
        }
        if (((bitField0_ & 0x00000400) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(13, token_);
        }
        if (((bitField0_ & 0x00000800) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(14, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasDirection() != other.hasDirection()) return false;
        if (hasDirection()) {
          if (direction_ != other.direction_) return false;
        }
        if (!getColumnsToGetList()
            .equals(other.getColumnsToGetList())) return false;
        if (hasTimeRange() != other.hasTimeRange()) return false;
        if (hasTimeRange()) {
          if (!getTimeRange()
              .equals(other.getTimeRange())) return false;
        }
        if (hasMaxVersions() != other.hasMaxVersions()) return false;
        if (hasMaxVersions()) {
          if (getMaxVersions()
              != other.getMaxVersions()) return false;
        }
        if (hasLimit() != other.hasLimit()) return false;
        if (hasLimit()) {
          if (getLimit()
              != other.getLimit()) return false;
        }
        if (hasInclusiveStartPrimaryKey() != other.hasInclusiveStartPrimaryKey()) return false;
        if (hasInclusiveStartPrimaryKey()) {
          if (!getInclusiveStartPrimaryKey()
              .equals(other.getInclusiveStartPrimaryKey())) return false;
        }
        if (hasExclusiveEndPrimaryKey() != other.hasExclusiveEndPrimaryKey()) return false;
        if (hasExclusiveEndPrimaryKey()) {
          if (!getExclusiveEndPrimaryKey()
              .equals(other.getExclusiveEndPrimaryKey())) return false;
        }
        if (hasFilter() != other.hasFilter()) return false;
        if (hasFilter()) {
          if (!getFilter()
              .equals(other.getFilter())) return false;
        }
        if (hasStartColumn() != other.hasStartColumn()) return false;
        if (hasStartColumn()) {
          if (!getStartColumn()
              .equals(other.getStartColumn())) return false;
        }
        if (hasEndColumn() != other.hasEndColumn()) return false;
        if (hasEndColumn()) {
          if (!getEndColumn()
              .equals(other.getEndColumn())) return false;
        }
        if (hasToken() != other.hasToken()) return false;
        if (hasToken()) {
          if (!getToken()
              .equals(other.getToken())) return false;
        }
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasDirection()) {
          hash = (37 * hash) + DIRECTION_FIELD_NUMBER;
          hash = (53 * hash) + direction_;
        }
        if (getColumnsToGetCount() > 0) {
          hash = (37 * hash) + COLUMNS_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsToGetList().hashCode();
        }
        if (hasTimeRange()) {
          hash = (37 * hash) + TIME_RANGE_FIELD_NUMBER;
          hash = (53 * hash) + getTimeRange().hashCode();
        }
        if (hasMaxVersions()) {
          hash = (37 * hash) + MAX_VERSIONS_FIELD_NUMBER;
          hash = (53 * hash) + getMaxVersions();
        }
        if (hasLimit()) {
          hash = (37 * hash) + LIMIT_FIELD_NUMBER;
          hash = (53 * hash) + getLimit();
        }
        if (hasInclusiveStartPrimaryKey()) {
          hash = (37 * hash) + INCLUSIVE_START_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getInclusiveStartPrimaryKey().hashCode();
        }
        if (hasExclusiveEndPrimaryKey()) {
          hash = (37 * hash) + EXCLUSIVE_END_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getExclusiveEndPrimaryKey().hashCode();
        }
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        if (hasStartColumn()) {
          hash = (37 * hash) + START_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getStartColumn().hashCode();
        }
        if (hasEndColumn()) {
          hash = (37 * hash) + END_COLUMN_FIELD_NUMBER;
          hash = (53 * hash) + getEndColumn().hashCode();
        }
        if (hasToken()) {
          hash = (37 * hash) + TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getToken().hashCode();
        }
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getTimeRangeFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          direction_ = 0;
          columnsToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          maxVersions_ = 0;
          limit_ = 0;
          inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          startColumn_ = "";
          endColumn_ = "";
          token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.direction_ = direction_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            columnsToGet_.makeImmutable();
            result.columnsToGet_ = columnsToGet_;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.timeRange_ = timeRangeBuilder_ == null
                ? timeRange_
                : timeRangeBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.maxVersions_ = maxVersions_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.limit_ = limit_;
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000040) != 0)) {
            result.inclusiveStartPrimaryKey_ = inclusiveStartPrimaryKey_;
            to_bitField0_ |= 0x00000020;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.exclusiveEndPrimaryKey_ = exclusiveEndPrimaryKey_;
            to_bitField0_ |= 0x00000040;
          }
          if (((from_bitField0_ & 0x00000100) != 0)) {
            result.filter_ = filter_;
            to_bitField0_ |= 0x00000080;
          }
          if (((from_bitField0_ & 0x00000200) != 0)) {
            result.startColumn_ = startColumn_;
            to_bitField0_ |= 0x00000100;
          }
          if (((from_bitField0_ & 0x00000400) != 0)) {
            result.endColumn_ = endColumn_;
            to_bitField0_ |= 0x00000200;
          }
          if (((from_bitField0_ & 0x00000800) != 0)) {
            result.token_ = token_;
            to_bitField0_ |= 0x00000400;
          }
          if (((from_bitField0_ & 0x00001000) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000800;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasDirection()) {
            setDirection(other.getDirection());
          }
          if (!other.columnsToGet_.isEmpty()) {
            if (columnsToGet_.isEmpty()) {
              columnsToGet_ = other.columnsToGet_;
              bitField0_ |= 0x00000004;
            } else {
              ensureColumnsToGetIsMutable();
              columnsToGet_.addAll(other.columnsToGet_);
            }
            onChanged();
          }
          if (other.hasTimeRange()) {
            mergeTimeRange(other.getTimeRange());
          }
          if (other.hasMaxVersions()) {
            setMaxVersions(other.getMaxVersions());
          }
          if (other.hasLimit()) {
            setLimit(other.getLimit());
          }
          if (other.hasInclusiveStartPrimaryKey()) {
            setInclusiveStartPrimaryKey(other.getInclusiveStartPrimaryKey());
          }
          if (other.hasExclusiveEndPrimaryKey()) {
            setExclusiveEndPrimaryKey(other.getExclusiveEndPrimaryKey());
          }
          if (other.hasFilter()) {
            setFilter(other.getFilter());
          }
          if (other.hasStartColumn()) {
            startColumn_ = other.startColumn_;
            bitField0_ |= 0x00000200;
            onChanged();
          }
          if (other.hasEndColumn()) {
            endColumn_ = other.endColumn_;
            bitField0_ |= 0x00000400;
            onChanged();
          }
          if (other.hasToken()) {
            setToken(other.getToken());
          }
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00001000;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasDirection()) {
            return false;
          }
          if (!hasInclusiveStartPrimaryKey()) {
            return false;
          }
          if (!hasExclusiveEndPrimaryKey()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    direction_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsToGetIsMutable();
                  columnsToGet_.add(bs);
                  break;
                } // case 26
                case 34: {
                  input.readMessage(
                      getTimeRangeFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 40: {
                  maxVersions_ = input.readInt32();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 40
                case 48: {
                  limit_ = input.readInt32();
                  bitField0_ |= 0x00000020;
                  break;
                } // case 48
                case 58: {
                  inclusiveStartPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000040;
                  break;
                } // case 58
                case 66: {
                  exclusiveEndPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 66
                case 82: {
                  filter_ = input.readBytes();
                  bitField0_ |= 0x00000100;
                  break;
                } // case 82
                case 90: {
                  startColumn_ = input.readBytes();
                  bitField0_ |= 0x00000200;
                  break;
                } // case 90
                case 98: {
                  endColumn_ = input.readBytes();
                  bitField0_ |= 0x00000400;
                  break;
                } // case 98
                case 106: {
                  token_ = input.readBytes();
                  bitField0_ |= 0x00000800;
                  break;
                } // case 106
                case 114: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00001000;
                  break;
                } // case 114
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int direction_ = 0;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
         * @return Whether the direction field is set.
         */
        @java.lang.Override public boolean hasDirection() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
         * @return The direction.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction getDirection() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction.forNumber(direction_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction.FORWARD : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
         * @param value The direction to set.
         * @return This builder for chaining.
         */
        public Builder setDirection(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Direction value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          direction_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.Direction direction = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearDirection() {
          bitField0_ = (bitField0_ & ~0x00000002);
          direction_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsToGetIsMutable() {
          if (!columnsToGet_.isModifiable()) {
            columnsToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnsToGet_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return A list containing the columnsToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsToGetList() {
          columnsToGet_.makeImmutable();
          return columnsToGet_;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return The count of columnsToGet.
         */
        public int getColumnsToGetCount() {
          return columnsToGet_.size();
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the element to return.
         * @return The columnsToGet at the given index.
         */
        public java.lang.String getColumnsToGet(int index) {
          return columnsToGet_.get(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnsToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsToGetBytes(int index) {
          return columnsToGet_.getByteString(index);
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param index The index to set the value at.
         * @param value The columnsToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnsToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param values The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnsToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnsToGet_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnsToGet() {
          columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 3;</code>
         * @param value The bytes of the columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange timeRange_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> timeRangeBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         * @return Whether the timeRange field is set.
         */
        public boolean hasTimeRange() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         * @return The timeRange.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange getTimeRange() {
          if (timeRangeBuilder_ == null) {
            return timeRange_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          } else {
            return timeRangeBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder setTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            timeRange_ = value;
          } else {
            timeRangeBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder setTimeRange(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder builderForValue) {
          if (timeRangeBuilder_ == null) {
            timeRange_ = builderForValue.build();
          } else {
            timeRangeBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder mergeTimeRange(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange value) {
          if (timeRangeBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0) &&
              timeRange_ != null &&
              timeRange_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance()) {
              getTimeRangeBuilder().mergeFrom(value);
            } else {
              timeRange_ = value;
            }
          } else {
            timeRangeBuilder_.mergeFrom(value);
          }
          if (timeRange_ != null) {
            bitField0_ |= 0x00000008;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public Builder clearTimeRange() {
          bitField0_ = (bitField0_ & ~0x00000008);
          timeRange_ = null;
          if (timeRangeBuilder_ != null) {
            timeRangeBuilder_.dispose();
            timeRangeBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder getTimeRangeBuilder() {
          bitField0_ |= 0x00000008;
          onChanged();
          return getTimeRangeFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder getTimeRangeOrBuilder() {
          if (timeRangeBuilder_ != null) {
            return timeRangeBuilder_.getMessageOrBuilder();
          } else {
            return timeRange_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.getDefaultInstance() : timeRange_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.TimeRange time_range = 4;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder> 
            getTimeRangeFieldBuilder() {
          if (timeRangeBuilder_ == null) {
            timeRangeBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRange.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TimeRangeOrBuilder>(
                    getTimeRange(),
                    getParentForChildren(),
                    isClean());
            timeRange_ = null;
          }
          return timeRangeBuilder_;
        }
  
        private int maxVersions_ ;
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return Whether the maxVersions field is set.
         */
        @java.lang.Override
        public boolean hasMaxVersions() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return The maxVersions.
         */
        @java.lang.Override
        public int getMaxVersions() {
          return maxVersions_;
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @param value The maxVersions to set.
         * @return This builder for chaining.
         */
        public Builder setMaxVersions(int value) {
  
          maxVersions_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 max_versions = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearMaxVersions() {
          bitField0_ = (bitField0_ & ~0x00000010);
          maxVersions_ = 0;
          onChanged();
          return this;
        }
  
        private int limit_ ;
        /**
         * <code>optional int32 limit = 6;</code>
         * @return Whether the limit field is set.
         */
        @java.lang.Override
        public boolean hasLimit() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional int32 limit = 6;</code>
         * @return The limit.
         */
        @java.lang.Override
        public int getLimit() {
          return limit_;
        }
        /**
         * <code>optional int32 limit = 6;</code>
         * @param value The limit to set.
         * @return This builder for chaining.
         */
        public Builder setLimit(int value) {
  
          limit_ = value;
          bitField0_ |= 0x00000020;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 limit = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearLimit() {
          bitField0_ = (bitField0_ & ~0x00000020);
          limit_ = 0;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes inclusive_start_primary_key = 7;</code>
         * @return Whether the inclusiveStartPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasInclusiveStartPrimaryKey() {
          return ((bitField0_ & 0x00000040) != 0);
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 7;</code>
         * @return The inclusiveStartPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey() {
          return inclusiveStartPrimaryKey_;
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 7;</code>
         * @param value The inclusiveStartPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setInclusiveStartPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          inclusiveStartPrimaryKey_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 7;</code>
         * @return This builder for chaining.
         */
        public Builder clearInclusiveStartPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000040);
          inclusiveStartPrimaryKey_ = getDefaultInstance().getInclusiveStartPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes exclusive_end_primary_key = 8;</code>
         * @return Whether the exclusiveEndPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasExclusiveEndPrimaryKey() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 8;</code>
         * @return The exclusiveEndPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey() {
          return exclusiveEndPrimaryKey_;
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 8;</code>
         * @param value The exclusiveEndPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setExclusiveEndPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          exclusiveEndPrimaryKey_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearExclusiveEndPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000080);
          exclusiveEndPrimaryKey_ = getDefaultInstance().getExclusiveEndPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes filter = 10;</code>
         * @return Whether the filter field is set.
         */
        @java.lang.Override
        public boolean hasFilter() {
          return ((bitField0_ & 0x00000100) != 0);
        }
        /**
         * <code>optional bytes filter = 10;</code>
         * @return The filter.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
          return filter_;
        }
        /**
         * <code>optional bytes filter = 10;</code>
         * @param value The filter to set.
         * @return This builder for chaining.
         */
        public Builder setFilter(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          filter_ = value;
          bitField0_ |= 0x00000100;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes filter = 10;</code>
         * @return This builder for chaining.
         */
        public Builder clearFilter() {
          bitField0_ = (bitField0_ & ~0x00000100);
          filter_ = getDefaultInstance().getFilter();
          onChanged();
          return this;
        }
  
        private java.lang.Object startColumn_ = "";
        /**
         * <code>optional string start_column = 11;</code>
         * @return Whether the startColumn field is set.
         */
        public boolean hasStartColumn() {
          return ((bitField0_ & 0x00000200) != 0);
        }
        /**
         * <code>optional string start_column = 11;</code>
         * @return The startColumn.
         */
        public java.lang.String getStartColumn() {
          java.lang.Object ref = startColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              startColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string start_column = 11;</code>
         * @return The bytes for startColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStartColumnBytes() {
          java.lang.Object ref = startColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            startColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string start_column = 11;</code>
         * @param value The startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000200;
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 11;</code>
         * @return This builder for chaining.
         */
        public Builder clearStartColumn() {
          startColumn_ = getDefaultInstance().getStartColumn();
          bitField0_ = (bitField0_ & ~0x00000200);
          onChanged();
          return this;
        }
        /**
         * <code>optional string start_column = 11;</code>
         * @param value The bytes for startColumn to set.
         * @return This builder for chaining.
         */
        public Builder setStartColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          startColumn_ = value;
          bitField0_ |= 0x00000200;
          onChanged();
          return this;
        }
  
        private java.lang.Object endColumn_ = "";
        /**
         * <code>optional string end_column = 12;</code>
         * @return Whether the endColumn field is set.
         */
        public boolean hasEndColumn() {
          return ((bitField0_ & 0x00000400) != 0);
        }
        /**
         * <code>optional string end_column = 12;</code>
         * @return The endColumn.
         */
        public java.lang.String getEndColumn() {
          java.lang.Object ref = endColumn_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              endColumn_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string end_column = 12;</code>
         * @return The bytes for endColumn.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getEndColumnBytes() {
          java.lang.Object ref = endColumn_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            endColumn_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string end_column = 12;</code>
         * @param value The endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumn(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000400;
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 12;</code>
         * @return This builder for chaining.
         */
        public Builder clearEndColumn() {
          endColumn_ = getDefaultInstance().getEndColumn();
          bitField0_ = (bitField0_ & ~0x00000400);
          onChanged();
          return this;
        }
        /**
         * <code>optional string end_column = 12;</code>
         * @param value The bytes for endColumn to set.
         * @return This builder for chaining.
         */
        public Builder setEndColumnBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          endColumn_ = value;
          bitField0_ |= 0x00000400;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString token_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes token = 13;</code>
         * @return Whether the token field is set.
         */
        @java.lang.Override
        public boolean hasToken() {
          return ((bitField0_ & 0x00000800) != 0);
        }
        /**
         * <code>optional bytes token = 13;</code>
         * @return The token.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getToken() {
          return token_;
        }
        /**
         * <code>optional bytes token = 13;</code>
         * @param value The token to set.
         * @return This builder for chaining.
         */
        public Builder setToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          token_ = value;
          bitField0_ |= 0x00000800;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes token = 13;</code>
         * @return This builder for chaining.
         */
        public Builder clearToken() {
          bitField0_ = (bitField0_ & ~0x00000800);
          token_ = getDefaultInstance().getToken();
          onChanged();
          return this;
        }
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>optional string transaction_id = 14;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00001000) != 0);
        }
        /**
         * <code>optional string transaction_id = 14;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 14;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string transaction_id = 14;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00001000;
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 14;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00001000);
          onChanged();
          return this;
        }
        /**
         * <code>optional string transaction_id = 14;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00001000;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetRangeRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetRangeRequest>() {
        @java.lang.Override
        public GetRangeRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetRangeResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>required bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      boolean hasRows();
      /**
       * <code>required bytes rows = 2;</code>
       * @return The rows.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows();
  
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return Whether the nextStartPrimaryKey field is set.
       */
      boolean hasNextStartPrimaryKey();
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return The nextStartPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey();
  
      /**
       * <code>optional bytes next_token = 4;</code>
       * @return Whether the nextToken field is set.
       */
      boolean hasNextToken();
      /**
       * <code>optional bytes next_token = 4;</code>
       * @return The nextToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse}
     */
    public static final class GetRangeResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse)
        GetRangeResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetRangeResponse.class.getName());
      }
      // Use GetRangeResponse.newBuilder() to construct.
      private GetRangeResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetRangeResponse() {
        rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      @java.lang.Override
      public boolean hasRows() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes rows = 2;</code>
       * @return The rows.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
        return rows_;
      }
  
      public static final int NEXT_START_PRIMARY_KEY_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return Whether the nextStartPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasNextStartPrimaryKey() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return The nextStartPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey() {
        return nextStartPrimaryKey_;
      }
  
      public static final int NEXT_TOKEN_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes next_token = 4;</code>
       * @return Whether the nextToken field is set.
       */
      @java.lang.Override
      public boolean hasNextToken() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes next_token = 4;</code>
       * @return The nextToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
        return nextToken_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRows()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, rows_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(3, nextStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(4, nextToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rows_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, nextStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, nextToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRows() != other.hasRows()) return false;
        if (hasRows()) {
          if (!getRows()
              .equals(other.getRows())) return false;
        }
        if (hasNextStartPrimaryKey() != other.hasNextStartPrimaryKey()) return false;
        if (hasNextStartPrimaryKey()) {
          if (!getNextStartPrimaryKey()
              .equals(other.getNextStartPrimaryKey())) return false;
        }
        if (hasNextToken() != other.hasNextToken()) return false;
        if (hasNextToken()) {
          if (!getNextToken()
              .equals(other.getNextToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRows()) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRows().hashCode();
        }
        if (hasNextStartPrimaryKey()) {
          hash = (37 * hash) + NEXT_START_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getNextStartPrimaryKey().hashCode();
        }
        if (hasNextToken()) {
          hash = (37 * hash) + NEXT_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getNextToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rows_ = rows_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.nextStartPrimaryKey_ = nextStartPrimaryKey_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.nextToken_ = nextToken_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRows()) {
            setRows(other.getRows());
          }
          if (other.hasNextStartPrimaryKey()) {
            setNextStartPrimaryKey(other.getNextStartPrimaryKey());
          }
          if (other.hasNextToken()) {
            setNextToken(other.getNextToken());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!hasRows()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  rows_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  nextStartPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  nextToken_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes rows = 2;</code>
         * @return Whether the rows field is set.
         */
        @java.lang.Override
        public boolean hasRows() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @return The rows.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
          return rows_;
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @param value The rows to set.
         * @return This builder for chaining.
         */
        public Builder setRows(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rows_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRows() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rows_ = getDefaultInstance().getRows();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return Whether the nextStartPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasNextStartPrimaryKey() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return The nextStartPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey() {
          return nextStartPrimaryKey_;
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @param value The nextStartPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setNextStartPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextStartPrimaryKey_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextStartPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000004);
          nextStartPrimaryKey_ = getDefaultInstance().getNextStartPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextToken_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes next_token = 4;</code>
         * @return Whether the nextToken field is set.
         */
        @java.lang.Override
        public boolean hasNextToken() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bytes next_token = 4;</code>
         * @return The nextToken.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextToken() {
          return nextToken_;
        }
        /**
         * <code>optional bytes next_token = 4;</code>
         * @param value The nextToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextToken(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextToken_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes next_token = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextToken() {
          bitField0_ = (bitField0_ & ~0x00000008);
          nextToken_ = getDefaultInstance().getNextToken();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetRangeResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetRangeResponse>() {
        @java.lang.Override
        public GetRangeResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetRangeResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetRangeResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StartLocalTransactionRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required bytes key = 2;</code>
       * @return Whether the key field is set.
       */
      boolean hasKey();
      /**
       * <code>required bytes key = 2;</code>
       * @return The key.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKey();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest}
     */
    public static final class StartLocalTransactionRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest)
        StartLocalTransactionRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StartLocalTransactionRequest.class.getName());
      }
      // Use StartLocalTransactionRequest.newBuilder() to construct.
      private StartLocalTransactionRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private StartLocalTransactionRequest() {
        tableName_ = "";
        key_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int KEY_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString key_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes key = 2;</code>
       * @return Whether the key field is set.
       */
      @java.lang.Override
      public boolean hasKey() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes key = 2;</code>
       * @return The key.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKey() {
        return key_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, key_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, key_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasKey() != other.hasKey()) return false;
        if (hasKey()) {
          if (!getKey()
              .equals(other.getKey())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasKey()) {
          hash = (37 * hash) + KEY_FIELD_NUMBER;
          hash = (53 * hash) + getKey().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          key_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.key_ = key_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasKey()) {
            setKey(other.getKey());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasKey()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  key_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString key_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes key = 2;</code>
         * @return Whether the key field is set.
         */
        @java.lang.Override
        public boolean hasKey() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes key = 2;</code>
         * @return The key.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getKey() {
          return key_;
        }
        /**
         * <code>required bytes key = 2;</code>
         * @param value The key to set.
         * @return This builder for chaining.
         */
        public Builder setKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          key_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes key = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearKey() {
          bitField0_ = (bitField0_ & ~0x00000002);
          key_ = getDefaultInstance().getKey();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StartLocalTransactionRequest>() {
        @java.lang.Override
        public StartLocalTransactionRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StartLocalTransactionResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse}
     */
    public static final class StartLocalTransactionResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse)
        StartLocalTransactionResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StartLocalTransactionResponse.class.getName());
      }
      // Use StartLocalTransactionResponse.newBuilder() to construct.
      private StartLocalTransactionResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private StartLocalTransactionResponse() {
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int TRANSACTION_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTransactionId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse) obj;
  
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse.getDefaultInstance()) return this;
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTransactionId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>required string transaction_id = 1;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.StartLocalTransactionResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StartLocalTransactionResponse>() {
        @java.lang.Override
        public StartLocalTransactionResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StartLocalTransactionResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StartLocalTransactionResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CommitTransactionRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest}
     */
    public static final class CommitTransactionRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest)
        CommitTransactionRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CommitTransactionRequest.class.getName());
      }
      // Use CommitTransactionRequest.newBuilder() to construct.
      private CommitTransactionRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CommitTransactionRequest() {
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TRANSACTION_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTransactionId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest) obj;
  
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest.getDefaultInstance()) return this;
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTransactionId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>required string transaction_id = 1;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CommitTransactionRequest>() {
        @java.lang.Override
        public CommitTransactionRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface CommitTransactionResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse}
     */
    public static final class CommitTransactionResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse)
        CommitTransactionResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          CommitTransactionResponse.class.getName());
      }
      // Use CommitTransactionResponse.newBuilder() to construct.
      private CommitTransactionResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private CommitTransactionResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.CommitTransactionResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<CommitTransactionResponse>() {
        @java.lang.Override
        public CommitTransactionResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<CommitTransactionResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.CommitTransactionResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface AbortTransactionRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      boolean hasTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      java.lang.String getTransactionId();
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest}
     */
    public static final class AbortTransactionRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest)
        AbortTransactionRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          AbortTransactionRequest.class.getName());
      }
      // Use AbortTransactionRequest.newBuilder() to construct.
      private AbortTransactionRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private AbortTransactionRequest() {
        transactionId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TRANSACTION_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object transactionId_ = "";
      /**
       * <code>required string transaction_id = 1;</code>
       * @return Whether the transactionId field is set.
       */
      @java.lang.Override
      public boolean hasTransactionId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The transactionId.
       */
      @java.lang.Override
      public java.lang.String getTransactionId() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            transactionId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string transaction_id = 1;</code>
       * @return The bytes for transactionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTransactionIdBytes() {
        java.lang.Object ref = transactionId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transactionId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasTransactionId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, transactionId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, transactionId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest) obj;
  
        if (hasTransactionId() != other.hasTransactionId()) return false;
        if (hasTransactionId()) {
          if (!getTransactionId()
              .equals(other.getTransactionId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTransactionId()) {
          hash = (37 * hash) + TRANSACTION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getTransactionId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          transactionId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.transactionId_ = transactionId_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest.getDefaultInstance()) return this;
          if (other.hasTransactionId()) {
            transactionId_ = other.transactionId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTransactionId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  transactionId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object transactionId_ = "";
        /**
         * <code>required string transaction_id = 1;</code>
         * @return Whether the transactionId field is set.
         */
        public boolean hasTransactionId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The transactionId.
         */
        public java.lang.String getTransactionId() {
          java.lang.Object ref = transactionId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              transactionId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return The bytes for transactionId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTransactionIdBytes() {
          java.lang.Object ref = transactionId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            transactionId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTransactionId() {
          transactionId_ = getDefaultInstance().getTransactionId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string transaction_id = 1;</code>
         * @param value The bytes for transactionId to set.
         * @return This builder for chaining.
         */
        public Builder setTransactionIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          transactionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<AbortTransactionRequest>() {
        @java.lang.Override
        public AbortTransactionRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface AbortTransactionResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse}
     */
    public static final class AbortTransactionResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse)
        AbortTransactionResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          AbortTransactionResponse.class.getName());
      }
      // Use AbortTransactionResponse.newBuilder() to construct.
      private AbortTransactionResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private AbortTransactionResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.Builder.class);
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse) obj;
  
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse(this);
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse.getDefaultInstance()) return this;
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.AbortTransactionResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<AbortTransactionResponse>() {
        @java.lang.Override
        public AbortTransactionResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<AbortTransactionResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.AbortTransactionResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ListStreamRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest}
     */
    public static final class ListStreamRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest)
        ListStreamRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ListStreamRequest.class.getName());
      }
      // Use ListStreamRequest.newBuilder() to construct.
      private ListStreamRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ListStreamRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>optional string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ListStreamRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ListStreamRequest>() {
        @java.lang.Override
        public ListStreamRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StreamOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.Stream)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      boolean hasStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      java.lang.String getStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes();
  
      /**
       * <code>required string table_name = 2;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 2;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 2;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required int64 creation_time = 3;</code>
       * @return Whether the creationTime field is set.
       */
      boolean hasCreationTime();
      /**
       * <code>required int64 creation_time = 3;</code>
       * @return The creationTime.
       */
      long getCreationTime();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Stream}
     */
    public static final class Stream extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.Stream)
        StreamOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          Stream.class.getName());
      }
      // Use Stream.newBuilder() to construct.
      private Stream(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private Stream() {
        streamId_ = "";
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder.class);
      }
  
      private int bitField0_;
      public static final int STREAM_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object streamId_ = "";
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      @java.lang.Override
      public boolean hasStreamId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      @java.lang.Override
      public java.lang.String getStreamId() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            streamId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          streamId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TABLE_NAME_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 2;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required string table_name = 2;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 2;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CREATION_TIME_FIELD_NUMBER = 3;
      private long creationTime_ = 0L;
      /**
       * <code>required int64 creation_time = 3;</code>
       * @return Whether the creationTime field is set.
       */
      @java.lang.Override
      public boolean hasCreationTime() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required int64 creation_time = 3;</code>
       * @return The creationTime.
       */
      @java.lang.Override
      public long getCreationTime() {
        return creationTime_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasStreamId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCreationTime()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, tableName_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, creationTime_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, tableName_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, creationTime_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream) obj;
  
        if (hasStreamId() != other.hasStreamId()) return false;
        if (hasStreamId()) {
          if (!getStreamId()
              .equals(other.getStreamId())) return false;
        }
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasCreationTime() != other.hasCreationTime()) return false;
        if (hasCreationTime()) {
          if (getCreationTime()
              != other.getCreationTime()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasStreamId()) {
          hash = (37 * hash) + STREAM_ID_FIELD_NUMBER;
          hash = (53 * hash) + getStreamId().hashCode();
        }
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasCreationTime()) {
          hash = (37 * hash) + CREATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getCreationTime());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.Stream}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.Stream)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          streamId_ = "";
          tableName_ = "";
          creationTime_ = 0L;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.streamId_ = streamId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.creationTime_ = creationTime_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.getDefaultInstance()) return this;
          if (other.hasStreamId()) {
            streamId_ = other.streamId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasCreationTime()) {
            setCreationTime(other.getCreationTime());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasStreamId()) {
            return false;
          }
          if (!hasTableName()) {
            return false;
          }
          if (!hasCreationTime()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  streamId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  creationTime_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object streamId_ = "";
        /**
         * <code>required string stream_id = 1;</code>
         * @return Whether the streamId field is set.
         */
        public boolean hasStreamId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The streamId.
         */
        public java.lang.String getStreamId() {
          java.lang.Object ref = streamId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              streamId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The bytes for streamId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStreamIdBytes() {
          java.lang.Object ref = streamId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            streamId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamId() {
          streamId_ = getDefaultInstance().getStreamId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The bytes for streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 2;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required string table_name = 2;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 2;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 2;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 2;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private long creationTime_ ;
        /**
         * <code>required int64 creation_time = 3;</code>
         * @return Whether the creationTime field is set.
         */
        @java.lang.Override
        public boolean hasCreationTime() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required int64 creation_time = 3;</code>
         * @return The creationTime.
         */
        @java.lang.Override
        public long getCreationTime() {
          return creationTime_;
        }
        /**
         * <code>required int64 creation_time = 3;</code>
         * @param value The creationTime to set.
         * @return This builder for chaining.
         */
        public Builder setCreationTime(long value) {
  
          creationTime_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required int64 creation_time = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearCreationTime() {
          bitField0_ = (bitField0_ & ~0x00000004);
          creationTime_ = 0L;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.Stream)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.Stream)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Stream>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<Stream>() {
        @java.lang.Override
        public Stream parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Stream> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<Stream> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ListStreamResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> 
          getStreamsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getStreams(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      int getStreamsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder> 
          getStreamsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder getStreamsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse}
     */
    public static final class ListStreamResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse)
        ListStreamResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ListStreamResponse.class.getName());
      }
      // Use ListStreamResponse.newBuilder() to construct.
      private ListStreamResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ListStreamResponse() {
        streams_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.Builder.class);
      }
  
      public static final int STREAMS_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> streams_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> getStreamsList() {
        return streams_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder> 
          getStreamsOrBuilderList() {
        return streams_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      @java.lang.Override
      public int getStreamsCount() {
        return streams_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getStreams(int index) {
        return streams_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder getStreamsOrBuilder(
          int index) {
        return streams_.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;
  
        for (int i = 0; i < getStreamsCount(); i++) {
          if (!getStreams(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < streams_.size(); i++) {
          output.writeMessage(1, streams_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < streams_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, streams_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse) obj;
  
        if (!getStreamsList()
            .equals(other.getStreamsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getStreamsCount() > 0) {
          hash = (37 * hash) + STREAMS_FIELD_NUMBER;
          hash = (53 * hash) + getStreamsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (streamsBuilder_ == null) {
            streams_ = java.util.Collections.emptyList();
          } else {
            streams_ = null;
            streamsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse result) {
          if (streamsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              streams_ = java.util.Collections.unmodifiableList(streams_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.streams_ = streams_;
          } else {
            result.streams_ = streamsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse result) {
          int from_bitField0_ = bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse.getDefaultInstance()) return this;
          if (streamsBuilder_ == null) {
            if (!other.streams_.isEmpty()) {
              if (streams_.isEmpty()) {
                streams_ = other.streams_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureStreamsIsMutable();
                streams_.addAll(other.streams_);
              }
              onChanged();
            }
          } else {
            if (!other.streams_.isEmpty()) {
              if (streamsBuilder_.isEmpty()) {
                streamsBuilder_.dispose();
                streamsBuilder_ = null;
                streams_ = other.streams_;
                bitField0_ = (bitField0_ & ~0x00000001);
                streamsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getStreamsFieldBuilder() : null;
              } else {
                streamsBuilder_.addAllMessages(other.streams_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getStreamsCount(); i++) {
            if (!getStreams(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.parser(),
                          extensionRegistry);
                  if (streamsBuilder_ == null) {
                    ensureStreamsIsMutable();
                    streams_.add(m);
                  } else {
                    streamsBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> streams_ =
          java.util.Collections.emptyList();
        private void ensureStreamsIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            streams_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream>(streams_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder> streamsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> getStreamsList() {
          if (streamsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(streams_);
          } else {
            return streamsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public int getStreamsCount() {
          if (streamsBuilder_ == null) {
            return streams_.size();
          } else {
            return streamsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream getStreams(int index) {
          if (streamsBuilder_ == null) {
            return streams_.get(index);
          } else {
            return streamsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder setStreams(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream value) {
          if (streamsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamsIsMutable();
            streams_.set(index, value);
            onChanged();
          } else {
            streamsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder setStreams(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder builderForValue) {
          if (streamsBuilder_ == null) {
            ensureStreamsIsMutable();
            streams_.set(index, builderForValue.build());
            onChanged();
          } else {
            streamsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder addStreams(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream value) {
          if (streamsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamsIsMutable();
            streams_.add(value);
            onChanged();
          } else {
            streamsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder addStreams(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream value) {
          if (streamsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamsIsMutable();
            streams_.add(index, value);
            onChanged();
          } else {
            streamsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder addStreams(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder builderForValue) {
          if (streamsBuilder_ == null) {
            ensureStreamsIsMutable();
            streams_.add(builderForValue.build());
            onChanged();
          } else {
            streamsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder addStreams(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder builderForValue) {
          if (streamsBuilder_ == null) {
            ensureStreamsIsMutable();
            streams_.add(index, builderForValue.build());
            onChanged();
          } else {
            streamsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder addAllStreams(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream> values) {
          if (streamsBuilder_ == null) {
            ensureStreamsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, streams_);
            onChanged();
          } else {
            streamsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder clearStreams() {
          if (streamsBuilder_ == null) {
            streams_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            streamsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public Builder removeStreams(int index) {
          if (streamsBuilder_ == null) {
            ensureStreamsIsMutable();
            streams_.remove(index);
            onChanged();
          } else {
            streamsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder getStreamsBuilder(
            int index) {
          return getStreamsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder getStreamsOrBuilder(
            int index) {
          if (streamsBuilder_ == null) {
            return streams_.get(index);  } else {
            return streamsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder> 
             getStreamsOrBuilderList() {
          if (streamsBuilder_ != null) {
            return streamsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(streams_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder addStreamsBuilder() {
          return getStreamsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder addStreamsBuilder(
            int index) {
          return getStreamsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.Stream streams = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder> 
             getStreamsBuilderList() {
          return getStreamsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder> 
            getStreamsFieldBuilder() {
          if (streamsBuilder_ == null) {
            streamsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Stream.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamOrBuilder>(
                    streams_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            streams_ = null;
          }
          return streamsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ListStreamResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ListStreamResponse>() {
        @java.lang.Override
        public ListStreamResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ListStreamResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ListStreamResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface StreamShardOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.StreamShard)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string shard_id = 1;</code>
       * @return Whether the shardId field is set.
       */
      boolean hasShardId();
      /**
       * <code>required string shard_id = 1;</code>
       * @return The shardId.
       */
      java.lang.String getShardId();
      /**
       * <code>required string shard_id = 1;</code>
       * @return The bytes for shardId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIdBytes();
  
      /**
       * <code>optional string parent_id = 2;</code>
       * @return Whether the parentId field is set.
       */
      boolean hasParentId();
      /**
       * <code>optional string parent_id = 2;</code>
       * @return The parentId.
       */
      java.lang.String getParentId();
      /**
       * <code>optional string parent_id = 2;</code>
       * @return The bytes for parentId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getParentIdBytes();
  
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return Whether the parentSiblingId field is set.
       */
      boolean hasParentSiblingId();
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return The parentSiblingId.
       */
      java.lang.String getParentSiblingId();
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return The bytes for parentSiblingId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getParentSiblingIdBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamShard}
     */
    public static final class StreamShard extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.StreamShard)
        StreamShardOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          StreamShard.class.getName());
      }
      // Use StreamShard.newBuilder() to construct.
      private StreamShard(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private StreamShard() {
        shardId_ = "";
        parentId_ = "";
        parentSiblingId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder.class);
      }
  
      private int bitField0_;
      public static final int SHARD_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object shardId_ = "";
      /**
       * <code>required string shard_id = 1;</code>
       * @return Whether the shardId field is set.
       */
      @java.lang.Override
      public boolean hasShardId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string shard_id = 1;</code>
       * @return The shardId.
       */
      @java.lang.Override
      public java.lang.String getShardId() {
        java.lang.Object ref = shardId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            shardId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string shard_id = 1;</code>
       * @return The bytes for shardId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIdBytes() {
        java.lang.Object ref = shardId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          shardId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PARENT_ID_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object parentId_ = "";
      /**
       * <code>optional string parent_id = 2;</code>
       * @return Whether the parentId field is set.
       */
      @java.lang.Override
      public boolean hasParentId() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional string parent_id = 2;</code>
       * @return The parentId.
       */
      @java.lang.Override
      public java.lang.String getParentId() {
        java.lang.Object ref = parentId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            parentId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string parent_id = 2;</code>
       * @return The bytes for parentId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getParentIdBytes() {
        java.lang.Object ref = parentId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          parentId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PARENT_SIBLING_ID_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private volatile java.lang.Object parentSiblingId_ = "";
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return Whether the parentSiblingId field is set.
       */
      @java.lang.Override
      public boolean hasParentSiblingId() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return The parentSiblingId.
       */
      @java.lang.Override
      public java.lang.String getParentSiblingId() {
        java.lang.Object ref = parentSiblingId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            parentSiblingId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string parent_sibling_id = 3;</code>
       * @return The bytes for parentSiblingId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getParentSiblingIdBytes() {
        java.lang.Object ref = parentSiblingId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          parentSiblingId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasShardId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, shardId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, parentId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, parentSiblingId_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, shardId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, parentId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(3, parentSiblingId_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard) obj;
  
        if (hasShardId() != other.hasShardId()) return false;
        if (hasShardId()) {
          if (!getShardId()
              .equals(other.getShardId())) return false;
        }
        if (hasParentId() != other.hasParentId()) return false;
        if (hasParentId()) {
          if (!getParentId()
              .equals(other.getParentId())) return false;
        }
        if (hasParentSiblingId() != other.hasParentSiblingId()) return false;
        if (hasParentSiblingId()) {
          if (!getParentSiblingId()
              .equals(other.getParentSiblingId())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasShardId()) {
          hash = (37 * hash) + SHARD_ID_FIELD_NUMBER;
          hash = (53 * hash) + getShardId().hashCode();
        }
        if (hasParentId()) {
          hash = (37 * hash) + PARENT_ID_FIELD_NUMBER;
          hash = (53 * hash) + getParentId().hashCode();
        }
        if (hasParentSiblingId()) {
          hash = (37 * hash) + PARENT_SIBLING_ID_FIELD_NUMBER;
          hash = (53 * hash) + getParentSiblingId().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.StreamShard}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.StreamShard)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          shardId_ = "";
          parentId_ = "";
          parentSiblingId_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.shardId_ = shardId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.parentId_ = parentId_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.parentSiblingId_ = parentSiblingId_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.getDefaultInstance()) return this;
          if (other.hasShardId()) {
            shardId_ = other.shardId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasParentId()) {
            parentId_ = other.parentId_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasParentSiblingId()) {
            parentSiblingId_ = other.parentSiblingId_;
            bitField0_ |= 0x00000004;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasShardId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  shardId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  parentId_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  parentSiblingId_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object shardId_ = "";
        /**
         * <code>required string shard_id = 1;</code>
         * @return Whether the shardId field is set.
         */
        public boolean hasShardId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string shard_id = 1;</code>
         * @return The shardId.
         */
        public java.lang.String getShardId() {
          java.lang.Object ref = shardId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              shardId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string shard_id = 1;</code>
         * @return The bytes for shardId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getShardIdBytes() {
          java.lang.Object ref = shardId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            shardId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string shard_id = 1;</code>
         * @param value The shardId to set.
         * @return This builder for chaining.
         */
        public Builder setShardId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          shardId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardId() {
          shardId_ = getDefaultInstance().getShardId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_id = 1;</code>
         * @param value The bytes for shardId to set.
         * @return This builder for chaining.
         */
        public Builder setShardIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          shardId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object parentId_ = "";
        /**
         * <code>optional string parent_id = 2;</code>
         * @return Whether the parentId field is set.
         */
        public boolean hasParentId() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string parent_id = 2;</code>
         * @return The parentId.
         */
        public java.lang.String getParentId() {
          java.lang.Object ref = parentId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              parentId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string parent_id = 2;</code>
         * @return The bytes for parentId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getParentIdBytes() {
          java.lang.Object ref = parentId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            parentId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string parent_id = 2;</code>
         * @param value The parentId to set.
         * @return This builder for chaining.
         */
        public Builder setParentId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          parentId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string parent_id = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearParentId() {
          parentId_ = getDefaultInstance().getParentId();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string parent_id = 2;</code>
         * @param value The bytes for parentId to set.
         * @return This builder for chaining.
         */
        public Builder setParentIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          parentId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private java.lang.Object parentSiblingId_ = "";
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @return Whether the parentSiblingId field is set.
         */
        public boolean hasParentSiblingId() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @return The parentSiblingId.
         */
        public java.lang.String getParentSiblingId() {
          java.lang.Object ref = parentSiblingId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              parentSiblingId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @return The bytes for parentSiblingId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getParentSiblingIdBytes() {
          java.lang.Object ref = parentSiblingId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            parentSiblingId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @param value The parentSiblingId to set.
         * @return This builder for chaining.
         */
        public Builder setParentSiblingId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          parentSiblingId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearParentSiblingId() {
          parentSiblingId_ = getDefaultInstance().getParentSiblingId();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
        /**
         * <code>optional string parent_sibling_id = 3;</code>
         * @param value The bytes for parentSiblingId to set.
         * @return This builder for chaining.
         */
        public Builder setParentSiblingIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          parentSiblingId_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.StreamShard)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.StreamShard)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamShard>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StreamShard>() {
        @java.lang.Override
        public StreamShard parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamShard> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamShard> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DescribeStreamRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      boolean hasStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      java.lang.String getStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes();
  
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return Whether the inclusiveStartShardId field is set.
       */
      boolean hasInclusiveStartShardId();
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return The inclusiveStartShardId.
       */
      java.lang.String getInclusiveStartShardId();
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return The bytes for inclusiveStartShardId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getInclusiveStartShardIdBytes();
  
      /**
       * <code>optional int32 shard_limit = 3;</code>
       * @return Whether the shardLimit field is set.
       */
      boolean hasShardLimit();
      /**
       * <code>optional int32 shard_limit = 3;</code>
       * @return The shardLimit.
       */
      int getShardLimit();
  
      /**
       * <code>optional bool support_timeseries_data_table = 4;</code>
       * @return Whether the supportTimeseriesDataTable field is set.
       */
      boolean hasSupportTimeseriesDataTable();
      /**
       * <code>optional bool support_timeseries_data_table = 4;</code>
       * @return The supportTimeseriesDataTable.
       */
      boolean getSupportTimeseriesDataTable();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest}
     */
    public static final class DescribeStreamRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest)
        DescribeStreamRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DescribeStreamRequest.class.getName());
      }
      // Use DescribeStreamRequest.newBuilder() to construct.
      private DescribeStreamRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DescribeStreamRequest() {
        streamId_ = "";
        inclusiveStartShardId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int STREAM_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object streamId_ = "";
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      @java.lang.Override
      public boolean hasStreamId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      @java.lang.Override
      public java.lang.String getStreamId() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            streamId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          streamId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int INCLUSIVE_START_SHARD_ID_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object inclusiveStartShardId_ = "";
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return Whether the inclusiveStartShardId field is set.
       */
      @java.lang.Override
      public boolean hasInclusiveStartShardId() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return The inclusiveStartShardId.
       */
      @java.lang.Override
      public java.lang.String getInclusiveStartShardId() {
        java.lang.Object ref = inclusiveStartShardId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            inclusiveStartShardId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string inclusive_start_shard_id = 2;</code>
       * @return The bytes for inclusiveStartShardId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getInclusiveStartShardIdBytes() {
        java.lang.Object ref = inclusiveStartShardId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          inclusiveStartShardId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int SHARD_LIMIT_FIELD_NUMBER = 3;
      private int shardLimit_ = 0;
      /**
       * <code>optional int32 shard_limit = 3;</code>
       * @return Whether the shardLimit field is set.
       */
      @java.lang.Override
      public boolean hasShardLimit() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int32 shard_limit = 3;</code>
       * @return The shardLimit.
       */
      @java.lang.Override
      public int getShardLimit() {
        return shardLimit_;
      }
  
      public static final int SUPPORT_TIMESERIES_DATA_TABLE_FIELD_NUMBER = 4;
      private boolean supportTimeseriesDataTable_ = false;
      /**
       * <code>optional bool support_timeseries_data_table = 4;</code>
       * @return Whether the supportTimeseriesDataTable field is set.
       */
      @java.lang.Override
      public boolean hasSupportTimeseriesDataTable() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bool support_timeseries_data_table = 4;</code>
       * @return The supportTimeseriesDataTable.
       */
      @java.lang.Override
      public boolean getSupportTimeseriesDataTable() {
        return supportTimeseriesDataTable_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasStreamId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, inclusiveStartShardId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt32(3, shardLimit_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBool(4, supportTimeseriesDataTable_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, inclusiveStartShardId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(3, shardLimit_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(4, supportTimeseriesDataTable_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest) obj;
  
        if (hasStreamId() != other.hasStreamId()) return false;
        if (hasStreamId()) {
          if (!getStreamId()
              .equals(other.getStreamId())) return false;
        }
        if (hasInclusiveStartShardId() != other.hasInclusiveStartShardId()) return false;
        if (hasInclusiveStartShardId()) {
          if (!getInclusiveStartShardId()
              .equals(other.getInclusiveStartShardId())) return false;
        }
        if (hasShardLimit() != other.hasShardLimit()) return false;
        if (hasShardLimit()) {
          if (getShardLimit()
              != other.getShardLimit()) return false;
        }
        if (hasSupportTimeseriesDataTable() != other.hasSupportTimeseriesDataTable()) return false;
        if (hasSupportTimeseriesDataTable()) {
          if (getSupportTimeseriesDataTable()
              != other.getSupportTimeseriesDataTable()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasStreamId()) {
          hash = (37 * hash) + STREAM_ID_FIELD_NUMBER;
          hash = (53 * hash) + getStreamId().hashCode();
        }
        if (hasInclusiveStartShardId()) {
          hash = (37 * hash) + INCLUSIVE_START_SHARD_ID_FIELD_NUMBER;
          hash = (53 * hash) + getInclusiveStartShardId().hashCode();
        }
        if (hasShardLimit()) {
          hash = (37 * hash) + SHARD_LIMIT_FIELD_NUMBER;
          hash = (53 * hash) + getShardLimit();
        }
        if (hasSupportTimeseriesDataTable()) {
          hash = (37 * hash) + SUPPORT_TIMESERIES_DATA_TABLE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getSupportTimeseriesDataTable());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          streamId_ = "";
          inclusiveStartShardId_ = "";
          shardLimit_ = 0;
          supportTimeseriesDataTable_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.streamId_ = streamId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.inclusiveStartShardId_ = inclusiveStartShardId_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.shardLimit_ = shardLimit_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.supportTimeseriesDataTable_ = supportTimeseriesDataTable_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest.getDefaultInstance()) return this;
          if (other.hasStreamId()) {
            streamId_ = other.streamId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasInclusiveStartShardId()) {
            inclusiveStartShardId_ = other.inclusiveStartShardId_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasShardLimit()) {
            setShardLimit(other.getShardLimit());
          }
          if (other.hasSupportTimeseriesDataTable()) {
            setSupportTimeseriesDataTable(other.getSupportTimeseriesDataTable());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasStreamId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  streamId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  inclusiveStartShardId_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  shardLimit_ = input.readInt32();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                case 32: {
                  supportTimeseriesDataTable_ = input.readBool();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 32
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object streamId_ = "";
        /**
         * <code>required string stream_id = 1;</code>
         * @return Whether the streamId field is set.
         */
        public boolean hasStreamId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The streamId.
         */
        public java.lang.String getStreamId() {
          java.lang.Object ref = streamId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              streamId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The bytes for streamId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStreamIdBytes() {
          java.lang.Object ref = streamId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            streamId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamId() {
          streamId_ = getDefaultInstance().getStreamId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The bytes for streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object inclusiveStartShardId_ = "";
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @return Whether the inclusiveStartShardId field is set.
         */
        public boolean hasInclusiveStartShardId() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @return The inclusiveStartShardId.
         */
        public java.lang.String getInclusiveStartShardId() {
          java.lang.Object ref = inclusiveStartShardId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              inclusiveStartShardId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @return The bytes for inclusiveStartShardId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getInclusiveStartShardIdBytes() {
          java.lang.Object ref = inclusiveStartShardId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            inclusiveStartShardId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @param value The inclusiveStartShardId to set.
         * @return This builder for chaining.
         */
        public Builder setInclusiveStartShardId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          inclusiveStartShardId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearInclusiveStartShardId() {
          inclusiveStartShardId_ = getDefaultInstance().getInclusiveStartShardId();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string inclusive_start_shard_id = 2;</code>
         * @param value The bytes for inclusiveStartShardId to set.
         * @return This builder for chaining.
         */
        public Builder setInclusiveStartShardIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          inclusiveStartShardId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private int shardLimit_ ;
        /**
         * <code>optional int32 shard_limit = 3;</code>
         * @return Whether the shardLimit field is set.
         */
        @java.lang.Override
        public boolean hasShardLimit() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int32 shard_limit = 3;</code>
         * @return The shardLimit.
         */
        @java.lang.Override
        public int getShardLimit() {
          return shardLimit_;
        }
        /**
         * <code>optional int32 shard_limit = 3;</code>
         * @param value The shardLimit to set.
         * @return This builder for chaining.
         */
        public Builder setShardLimit(int value) {
  
          shardLimit_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 shard_limit = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardLimit() {
          bitField0_ = (bitField0_ & ~0x00000004);
          shardLimit_ = 0;
          onChanged();
          return this;
        }
  
        private boolean supportTimeseriesDataTable_ ;
        /**
         * <code>optional bool support_timeseries_data_table = 4;</code>
         * @return Whether the supportTimeseriesDataTable field is set.
         */
        @java.lang.Override
        public boolean hasSupportTimeseriesDataTable() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bool support_timeseries_data_table = 4;</code>
         * @return The supportTimeseriesDataTable.
         */
        @java.lang.Override
        public boolean getSupportTimeseriesDataTable() {
          return supportTimeseriesDataTable_;
        }
        /**
         * <code>optional bool support_timeseries_data_table = 4;</code>
         * @param value The supportTimeseriesDataTable to set.
         * @return This builder for chaining.
         */
        public Builder setSupportTimeseriesDataTable(boolean value) {
  
          supportTimeseriesDataTable_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool support_timeseries_data_table = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearSupportTimeseriesDataTable() {
          bitField0_ = (bitField0_ & ~0x00000008);
          supportTimeseriesDataTable_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DescribeStreamRequest>() {
        @java.lang.Override
        public DescribeStreamRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface DescribeStreamResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      boolean hasStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      java.lang.String getStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes();
  
      /**
       * <code>required int32 expiration_time = 2;</code>
       * @return Whether the expirationTime field is set.
       */
      boolean hasExpirationTime();
      /**
       * <code>required int32 expiration_time = 2;</code>
       * @return The expirationTime.
       */
      int getExpirationTime();
  
      /**
       * <code>required string table_name = 3;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 3;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 3;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>required int64 creation_time = 4;</code>
       * @return Whether the creationTime field is set.
       */
      boolean hasCreationTime();
      /**
       * <code>required int64 creation_time = 4;</code>
       * @return The creationTime.
       */
      long getCreationTime();
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
       * @return Whether the streamStatus field is set.
       */
      boolean hasStreamStatus();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
       * @return The streamStatus.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus getStreamStatus();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> 
          getShardsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getShards(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      int getShardsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder> 
          getShardsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder getShardsOrBuilder(
          int index);
  
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return Whether the nextShardId field is set.
       */
      boolean hasNextShardId();
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return The nextShardId.
       */
      java.lang.String getNextShardId();
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return The bytes for nextShardId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextShardIdBytes();
  
      /**
       * <code>optional bool is_timeseries_data_table = 8;</code>
       * @return Whether the isTimeseriesDataTable field is set.
       */
      boolean hasIsTimeseriesDataTable();
      /**
       * <code>optional bool is_timeseries_data_table = 8;</code>
       * @return The isTimeseriesDataTable.
       */
      boolean getIsTimeseriesDataTable();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse}
     */
    public static final class DescribeStreamResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse)
        DescribeStreamResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          DescribeStreamResponse.class.getName());
      }
      // Use DescribeStreamResponse.newBuilder() to construct.
      private DescribeStreamResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private DescribeStreamResponse() {
        streamId_ = "";
        tableName_ = "";
        streamStatus_ = 1;
        shards_ = java.util.Collections.emptyList();
        nextShardId_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int STREAM_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object streamId_ = "";
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      @java.lang.Override
      public boolean hasStreamId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      @java.lang.Override
      public java.lang.String getStreamId() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            streamId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          streamId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int EXPIRATION_TIME_FIELD_NUMBER = 2;
      private int expirationTime_ = 0;
      /**
       * <code>required int32 expiration_time = 2;</code>
       * @return Whether the expirationTime field is set.
       */
      @java.lang.Override
      public boolean hasExpirationTime() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required int32 expiration_time = 2;</code>
       * @return The expirationTime.
       */
      @java.lang.Override
      public int getExpirationTime() {
        return expirationTime_;
      }
  
      public static final int TABLE_NAME_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 3;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required string table_name = 3;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 3;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CREATION_TIME_FIELD_NUMBER = 4;
      private long creationTime_ = 0L;
      /**
       * <code>required int64 creation_time = 4;</code>
       * @return Whether the creationTime field is set.
       */
      @java.lang.Override
      public boolean hasCreationTime() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>required int64 creation_time = 4;</code>
       * @return The creationTime.
       */
      @java.lang.Override
      public long getCreationTime() {
        return creationTime_;
      }
  
      public static final int STREAM_STATUS_FIELD_NUMBER = 5;
      private int streamStatus_ = 1;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
       * @return Whether the streamStatus field is set.
       */
      @java.lang.Override public boolean hasStreamStatus() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
       * @return The streamStatus.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus getStreamStatus() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus.forNumber(streamStatus_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus.STREAM_ENABLING : result;
      }
  
      public static final int SHARDS_FIELD_NUMBER = 6;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> shards_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> getShardsList() {
        return shards_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder> 
          getShardsOrBuilderList() {
        return shards_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      @java.lang.Override
      public int getShardsCount() {
        return shards_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getShards(int index) {
        return shards_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder getShardsOrBuilder(
          int index) {
        return shards_.get(index);
      }
  
      public static final int NEXT_SHARD_ID_FIELD_NUMBER = 7;
      @SuppressWarnings("serial")
      private volatile java.lang.Object nextShardId_ = "";
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return Whether the nextShardId field is set.
       */
      @java.lang.Override
      public boolean hasNextShardId() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return The nextShardId.
       */
      @java.lang.Override
      public java.lang.String getNextShardId() {
        java.lang.Object ref = nextShardId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            nextShardId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string next_shard_id = 7;</code>
       * @return The bytes for nextShardId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextShardIdBytes() {
        java.lang.Object ref = nextShardId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nextShardId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int IS_TIMESERIES_DATA_TABLE_FIELD_NUMBER = 8;
      private boolean isTimeseriesDataTable_ = false;
      /**
       * <code>optional bool is_timeseries_data_table = 8;</code>
       * @return Whether the isTimeseriesDataTable field is set.
       */
      @java.lang.Override
      public boolean hasIsTimeseriesDataTable() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <code>optional bool is_timeseries_data_table = 8;</code>
       * @return The isTimeseriesDataTable.
       */
      @java.lang.Override
      public boolean getIsTimeseriesDataTable() {
        return isTimeseriesDataTable_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasStreamId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasExpirationTime()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasCreationTime()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasStreamStatus()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getShardsCount(); i++) {
          if (!getShards(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, expirationTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, tableName_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeInt64(4, creationTime_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeEnum(5, streamStatus_);
        }
        for (int i = 0; i < shards_.size(); i++) {
          output.writeMessage(6, shards_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 7, nextShardId_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          output.writeBool(8, isTimeseriesDataTable_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, expirationTime_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(3, tableName_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(4, creationTime_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(5, streamStatus_);
        }
        for (int i = 0; i < shards_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(6, shards_.get(i));
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(7, nextShardId_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(8, isTimeseriesDataTable_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse) obj;
  
        if (hasStreamId() != other.hasStreamId()) return false;
        if (hasStreamId()) {
          if (!getStreamId()
              .equals(other.getStreamId())) return false;
        }
        if (hasExpirationTime() != other.hasExpirationTime()) return false;
        if (hasExpirationTime()) {
          if (getExpirationTime()
              != other.getExpirationTime()) return false;
        }
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasCreationTime() != other.hasCreationTime()) return false;
        if (hasCreationTime()) {
          if (getCreationTime()
              != other.getCreationTime()) return false;
        }
        if (hasStreamStatus() != other.hasStreamStatus()) return false;
        if (hasStreamStatus()) {
          if (streamStatus_ != other.streamStatus_) return false;
        }
        if (!getShardsList()
            .equals(other.getShardsList())) return false;
        if (hasNextShardId() != other.hasNextShardId()) return false;
        if (hasNextShardId()) {
          if (!getNextShardId()
              .equals(other.getNextShardId())) return false;
        }
        if (hasIsTimeseriesDataTable() != other.hasIsTimeseriesDataTable()) return false;
        if (hasIsTimeseriesDataTable()) {
          if (getIsTimeseriesDataTable()
              != other.getIsTimeseriesDataTable()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasStreamId()) {
          hash = (37 * hash) + STREAM_ID_FIELD_NUMBER;
          hash = (53 * hash) + getStreamId().hashCode();
        }
        if (hasExpirationTime()) {
          hash = (37 * hash) + EXPIRATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + getExpirationTime();
        }
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasCreationTime()) {
          hash = (37 * hash) + CREATION_TIME_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getCreationTime());
        }
        if (hasStreamStatus()) {
          hash = (37 * hash) + STREAM_STATUS_FIELD_NUMBER;
          hash = (53 * hash) + streamStatus_;
        }
        if (getShardsCount() > 0) {
          hash = (37 * hash) + SHARDS_FIELD_NUMBER;
          hash = (53 * hash) + getShardsList().hashCode();
        }
        if (hasNextShardId()) {
          hash = (37 * hash) + NEXT_SHARD_ID_FIELD_NUMBER;
          hash = (53 * hash) + getNextShardId().hashCode();
        }
        if (hasIsTimeseriesDataTable()) {
          hash = (37 * hash) + IS_TIMESERIES_DATA_TABLE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIsTimeseriesDataTable());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          streamId_ = "";
          expirationTime_ = 0;
          tableName_ = "";
          creationTime_ = 0L;
          streamStatus_ = 1;
          if (shardsBuilder_ == null) {
            shards_ = java.util.Collections.emptyList();
          } else {
            shards_ = null;
            shardsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000020);
          nextShardId_ = "";
          isTimeseriesDataTable_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse result) {
          if (shardsBuilder_ == null) {
            if (((bitField0_ & 0x00000020) != 0)) {
              shards_ = java.util.Collections.unmodifiableList(shards_);
              bitField0_ = (bitField0_ & ~0x00000020);
            }
            result.shards_ = shards_;
          } else {
            result.shards_ = shardsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.streamId_ = streamId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.expirationTime_ = expirationTime_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.creationTime_ = creationTime_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.streamStatus_ = streamStatus_;
            to_bitField0_ |= 0x00000010;
          }
          if (((from_bitField0_ & 0x00000040) != 0)) {
            result.nextShardId_ = nextShardId_;
            to_bitField0_ |= 0x00000020;
          }
          if (((from_bitField0_ & 0x00000080) != 0)) {
            result.isTimeseriesDataTable_ = isTimeseriesDataTable_;
            to_bitField0_ |= 0x00000040;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse.getDefaultInstance()) return this;
          if (other.hasStreamId()) {
            streamId_ = other.streamId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasExpirationTime()) {
            setExpirationTime(other.getExpirationTime());
          }
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000004;
            onChanged();
          }
          if (other.hasCreationTime()) {
            setCreationTime(other.getCreationTime());
          }
          if (other.hasStreamStatus()) {
            setStreamStatus(other.getStreamStatus());
          }
          if (shardsBuilder_ == null) {
            if (!other.shards_.isEmpty()) {
              if (shards_.isEmpty()) {
                shards_ = other.shards_;
                bitField0_ = (bitField0_ & ~0x00000020);
              } else {
                ensureShardsIsMutable();
                shards_.addAll(other.shards_);
              }
              onChanged();
            }
          } else {
            if (!other.shards_.isEmpty()) {
              if (shardsBuilder_.isEmpty()) {
                shardsBuilder_.dispose();
                shardsBuilder_ = null;
                shards_ = other.shards_;
                bitField0_ = (bitField0_ & ~0x00000020);
                shardsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getShardsFieldBuilder() : null;
              } else {
                shardsBuilder_.addAllMessages(other.shards_);
              }
            }
          }
          if (other.hasNextShardId()) {
            nextShardId_ = other.nextShardId_;
            bitField0_ |= 0x00000040;
            onChanged();
          }
          if (other.hasIsTimeseriesDataTable()) {
            setIsTimeseriesDataTable(other.getIsTimeseriesDataTable());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasStreamId()) {
            return false;
          }
          if (!hasExpirationTime()) {
            return false;
          }
          if (!hasTableName()) {
            return false;
          }
          if (!hasCreationTime()) {
            return false;
          }
          if (!hasStreamStatus()) {
            return false;
          }
          for (int i = 0; i < getShardsCount(); i++) {
            if (!getShards(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  streamId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  expirationTime_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 26: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 32: {
                  creationTime_ = input.readInt64();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 32
                case 40: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(5, tmpRaw);
                  } else {
                    streamStatus_ = tmpRaw;
                    bitField0_ |= 0x00000010;
                  }
                  break;
                } // case 40
                case 50: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.parser(),
                          extensionRegistry);
                  if (shardsBuilder_ == null) {
                    ensureShardsIsMutable();
                    shards_.add(m);
                  } else {
                    shardsBuilder_.addMessage(m);
                  }
                  break;
                } // case 50
                case 58: {
                  nextShardId_ = input.readBytes();
                  bitField0_ |= 0x00000040;
                  break;
                } // case 58
                case 64: {
                  isTimeseriesDataTable_ = input.readBool();
                  bitField0_ |= 0x00000080;
                  break;
                } // case 64
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object streamId_ = "";
        /**
         * <code>required string stream_id = 1;</code>
         * @return Whether the streamId field is set.
         */
        public boolean hasStreamId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The streamId.
         */
        public java.lang.String getStreamId() {
          java.lang.Object ref = streamId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              streamId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The bytes for streamId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStreamIdBytes() {
          java.lang.Object ref = streamId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            streamId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamId() {
          streamId_ = getDefaultInstance().getStreamId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The bytes for streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int expirationTime_ ;
        /**
         * <code>required int32 expiration_time = 2;</code>
         * @return Whether the expirationTime field is set.
         */
        @java.lang.Override
        public boolean hasExpirationTime() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required int32 expiration_time = 2;</code>
         * @return The expirationTime.
         */
        @java.lang.Override
        public int getExpirationTime() {
          return expirationTime_;
        }
        /**
         * <code>required int32 expiration_time = 2;</code>
         * @param value The expirationTime to set.
         * @return This builder for chaining.
         */
        public Builder setExpirationTime(int value) {
  
          expirationTime_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required int32 expiration_time = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearExpirationTime() {
          bitField0_ = (bitField0_ & ~0x00000002);
          expirationTime_ = 0;
          onChanged();
          return this;
        }
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 3;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required string table_name = 3;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 3;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 3;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 3;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        private long creationTime_ ;
        /**
         * <code>required int64 creation_time = 4;</code>
         * @return Whether the creationTime field is set.
         */
        @java.lang.Override
        public boolean hasCreationTime() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>required int64 creation_time = 4;</code>
         * @return The creationTime.
         */
        @java.lang.Override
        public long getCreationTime() {
          return creationTime_;
        }
        /**
         * <code>required int64 creation_time = 4;</code>
         * @param value The creationTime to set.
         * @return This builder for chaining.
         */
        public Builder setCreationTime(long value) {
  
          creationTime_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>required int64 creation_time = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearCreationTime() {
          bitField0_ = (bitField0_ & ~0x00000008);
          creationTime_ = 0L;
          onChanged();
          return this;
        }
  
        private int streamStatus_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
         * @return Whether the streamStatus field is set.
         */
        @java.lang.Override public boolean hasStreamStatus() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
         * @return The streamStatus.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus getStreamStatus() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus.forNumber(streamStatus_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus.STREAM_ENABLING : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
         * @param value The streamStatus to set.
         * @return This builder for chaining.
         */
        public Builder setStreamStatus(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamStatus value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000010;
          streamStatus_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.StreamStatus stream_status = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamStatus() {
          bitField0_ = (bitField0_ & ~0x00000010);
          streamStatus_ = 1;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> shards_ =
          java.util.Collections.emptyList();
        private void ensureShardsIsMutable() {
          if (!((bitField0_ & 0x00000020) != 0)) {
            shards_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard>(shards_);
            bitField0_ |= 0x00000020;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder> shardsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> getShardsList() {
          if (shardsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(shards_);
          } else {
            return shardsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public int getShardsCount() {
          if (shardsBuilder_ == null) {
            return shards_.size();
          } else {
            return shardsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard getShards(int index) {
          if (shardsBuilder_ == null) {
            return shards_.get(index);
          } else {
            return shardsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder setShards(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard value) {
          if (shardsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureShardsIsMutable();
            shards_.set(index, value);
            onChanged();
          } else {
            shardsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder setShards(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder builderForValue) {
          if (shardsBuilder_ == null) {
            ensureShardsIsMutable();
            shards_.set(index, builderForValue.build());
            onChanged();
          } else {
            shardsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder addShards(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard value) {
          if (shardsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureShardsIsMutable();
            shards_.add(value);
            onChanged();
          } else {
            shardsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder addShards(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard value) {
          if (shardsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureShardsIsMutable();
            shards_.add(index, value);
            onChanged();
          } else {
            shardsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder addShards(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder builderForValue) {
          if (shardsBuilder_ == null) {
            ensureShardsIsMutable();
            shards_.add(builderForValue.build());
            onChanged();
          } else {
            shardsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder addShards(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder builderForValue) {
          if (shardsBuilder_ == null) {
            ensureShardsIsMutable();
            shards_.add(index, builderForValue.build());
            onChanged();
          } else {
            shardsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder addAllShards(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard> values) {
          if (shardsBuilder_ == null) {
            ensureShardsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, shards_);
            onChanged();
          } else {
            shardsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder clearShards() {
          if (shardsBuilder_ == null) {
            shards_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000020);
            onChanged();
          } else {
            shardsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public Builder removeShards(int index) {
          if (shardsBuilder_ == null) {
            ensureShardsIsMutable();
            shards_.remove(index);
            onChanged();
          } else {
            shardsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder getShardsBuilder(
            int index) {
          return getShardsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder getShardsOrBuilder(
            int index) {
          if (shardsBuilder_ == null) {
            return shards_.get(index);  } else {
            return shardsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder> 
             getShardsOrBuilderList() {
          if (shardsBuilder_ != null) {
            return shardsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(shards_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder addShardsBuilder() {
          return getShardsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder addShardsBuilder(
            int index) {
          return getShardsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.StreamShard shards = 6;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder> 
             getShardsBuilderList() {
          return getShardsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder> 
            getShardsFieldBuilder() {
          if (shardsBuilder_ == null) {
            shardsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShard.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.StreamShardOrBuilder>(
                    shards_,
                    ((bitField0_ & 0x00000020) != 0),
                    getParentForChildren(),
                    isClean());
            shards_ = null;
          }
          return shardsBuilder_;
        }
  
        private java.lang.Object nextShardId_ = "";
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @return Whether the nextShardId field is set.
         */
        public boolean hasNextShardId() {
          return ((bitField0_ & 0x00000040) != 0);
        }
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @return The nextShardId.
         */
        public java.lang.String getNextShardId() {
          java.lang.Object ref = nextShardId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              nextShardId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @return The bytes for nextShardId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNextShardIdBytes() {
          java.lang.Object ref = nextShardId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            nextShardId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @param value The nextShardId to set.
         * @return This builder for chaining.
         */
        public Builder setNextShardId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          nextShardId_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextShardId() {
          nextShardId_ = getDefaultInstance().getNextShardId();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_shard_id = 7;</code>
         * @param value The bytes for nextShardId to set.
         * @return This builder for chaining.
         */
        public Builder setNextShardIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextShardId_ = value;
          bitField0_ |= 0x00000040;
          onChanged();
          return this;
        }
  
        private boolean isTimeseriesDataTable_ ;
        /**
         * <code>optional bool is_timeseries_data_table = 8;</code>
         * @return Whether the isTimeseriesDataTable field is set.
         */
        @java.lang.Override
        public boolean hasIsTimeseriesDataTable() {
          return ((bitField0_ & 0x00000080) != 0);
        }
        /**
         * <code>optional bool is_timeseries_data_table = 8;</code>
         * @return The isTimeseriesDataTable.
         */
        @java.lang.Override
        public boolean getIsTimeseriesDataTable() {
          return isTimeseriesDataTable_;
        }
        /**
         * <code>optional bool is_timeseries_data_table = 8;</code>
         * @param value The isTimeseriesDataTable to set.
         * @return This builder for chaining.
         */
        public Builder setIsTimeseriesDataTable(boolean value) {
  
          isTimeseriesDataTable_ = value;
          bitField0_ |= 0x00000080;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool is_timeseries_data_table = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearIsTimeseriesDataTable() {
          bitField0_ = (bitField0_ & ~0x00000080);
          isTimeseriesDataTable_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.DescribeStreamResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<DescribeStreamResponse>() {
        @java.lang.Override
        public DescribeStreamResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<DescribeStreamResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DescribeStreamResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetShardIteratorRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      boolean hasStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      java.lang.String getStreamId();
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes();
  
      /**
       * <code>required string shard_id = 2;</code>
       * @return Whether the shardId field is set.
       */
      boolean hasShardId();
      /**
       * <code>required string shard_id = 2;</code>
       * @return The shardId.
       */
      java.lang.String getShardId();
      /**
       * <code>required string shard_id = 2;</code>
       * @return The bytes for shardId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIdBytes();
  
      /**
       * <code>optional int64 timestamp = 3;</code>
       * @return Whether the timestamp field is set.
       */
      boolean hasTimestamp();
      /**
       * <code>optional int64 timestamp = 3;</code>
       * @return The timestamp.
       */
      long getTimestamp();
  
      /**
       * <code>optional string token = 4;</code>
       * @return Whether the token field is set.
       */
      boolean hasToken();
      /**
       * <code>optional string token = 4;</code>
       * @return The token.
       */
      java.lang.String getToken();
      /**
       * <code>optional string token = 4;</code>
       * @return The bytes for token.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTokenBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest}
     */
    public static final class GetShardIteratorRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest)
        GetShardIteratorRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetShardIteratorRequest.class.getName());
      }
      // Use GetShardIteratorRequest.newBuilder() to construct.
      private GetShardIteratorRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetShardIteratorRequest() {
        streamId_ = "";
        shardId_ = "";
        token_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int STREAM_ID_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object streamId_ = "";
      /**
       * <code>required string stream_id = 1;</code>
       * @return Whether the streamId field is set.
       */
      @java.lang.Override
      public boolean hasStreamId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The streamId.
       */
      @java.lang.Override
      public java.lang.String getStreamId() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            streamId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string stream_id = 1;</code>
       * @return The bytes for streamId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getStreamIdBytes() {
        java.lang.Object ref = streamId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          streamId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int SHARD_ID_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object shardId_ = "";
      /**
       * <code>required string shard_id = 2;</code>
       * @return Whether the shardId field is set.
       */
      @java.lang.Override
      public boolean hasShardId() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required string shard_id = 2;</code>
       * @return The shardId.
       */
      @java.lang.Override
      public java.lang.String getShardId() {
        java.lang.Object ref = shardId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            shardId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string shard_id = 2;</code>
       * @return The bytes for shardId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIdBytes() {
        java.lang.Object ref = shardId_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          shardId_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 3;
      private long timestamp_ = 0L;
      /**
       * <code>optional int64 timestamp = 3;</code>
       * @return Whether the timestamp field is set.
       */
      @java.lang.Override
      public boolean hasTimestamp() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 timestamp = 3;</code>
       * @return The timestamp.
       */
      @java.lang.Override
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int TOKEN_FIELD_NUMBER = 4;
      @SuppressWarnings("serial")
      private volatile java.lang.Object token_ = "";
      /**
       * <code>optional string token = 4;</code>
       * @return Whether the token field is set.
       */
      @java.lang.Override
      public boolean hasToken() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional string token = 4;</code>
       * @return The token.
       */
      @java.lang.Override
      public java.lang.String getToken() {
        java.lang.Object ref = token_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            token_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string token = 4;</code>
       * @return The bytes for token.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTokenBytes() {
        java.lang.Object ref = token_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          token_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasStreamId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasShardId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, shardId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, timestamp_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 4, token_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, streamId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, shardId_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, timestamp_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(4, token_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest) obj;
  
        if (hasStreamId() != other.hasStreamId()) return false;
        if (hasStreamId()) {
          if (!getStreamId()
              .equals(other.getStreamId())) return false;
        }
        if (hasShardId() != other.hasShardId()) return false;
        if (hasShardId()) {
          if (!getShardId()
              .equals(other.getShardId())) return false;
        }
        if (hasTimestamp() != other.hasTimestamp()) return false;
        if (hasTimestamp()) {
          if (getTimestamp()
              != other.getTimestamp()) return false;
        }
        if (hasToken() != other.hasToken()) return false;
        if (hasToken()) {
          if (!getToken()
              .equals(other.getToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasStreamId()) {
          hash = (37 * hash) + STREAM_ID_FIELD_NUMBER;
          hash = (53 * hash) + getStreamId().hashCode();
        }
        if (hasShardId()) {
          hash = (37 * hash) + SHARD_ID_FIELD_NUMBER;
          hash = (53 * hash) + getShardId().hashCode();
        }
        if (hasTimestamp()) {
          hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getTimestamp());
        }
        if (hasToken()) {
          hash = (37 * hash) + TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          streamId_ = "";
          shardId_ = "";
          timestamp_ = 0L;
          token_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.streamId_ = streamId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.shardId_ = shardId_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.timestamp_ = timestamp_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.token_ = token_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest.getDefaultInstance()) return this;
          if (other.hasStreamId()) {
            streamId_ = other.streamId_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasShardId()) {
            shardId_ = other.shardId_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasTimestamp()) {
            setTimestamp(other.getTimestamp());
          }
          if (other.hasToken()) {
            token_ = other.token_;
            bitField0_ |= 0x00000008;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasStreamId()) {
            return false;
          }
          if (!hasShardId()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  streamId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  shardId_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  timestamp_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                case 34: {
                  token_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object streamId_ = "";
        /**
         * <code>required string stream_id = 1;</code>
         * @return Whether the streamId field is set.
         */
        public boolean hasStreamId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The streamId.
         */
        public java.lang.String getStreamId() {
          java.lang.Object ref = streamId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              streamId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return The bytes for streamId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getStreamIdBytes() {
          java.lang.Object ref = streamId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            streamId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearStreamId() {
          streamId_ = getDefaultInstance().getStreamId();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string stream_id = 1;</code>
         * @param value The bytes for streamId to set.
         * @return This builder for chaining.
         */
        public Builder setStreamIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          streamId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object shardId_ = "";
        /**
         * <code>required string shard_id = 2;</code>
         * @return Whether the shardId field is set.
         */
        public boolean hasShardId() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required string shard_id = 2;</code>
         * @return The shardId.
         */
        public java.lang.String getShardId() {
          java.lang.Object ref = shardId_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              shardId_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string shard_id = 2;</code>
         * @return The bytes for shardId.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getShardIdBytes() {
          java.lang.Object ref = shardId_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            shardId_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string shard_id = 2;</code>
         * @param value The shardId to set.
         * @return This builder for chaining.
         */
        public Builder setShardId(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          shardId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_id = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardId() {
          shardId_ = getDefaultInstance().getShardId();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_id = 2;</code>
         * @param value The bytes for shardId to set.
         * @return This builder for chaining.
         */
        public Builder setShardIdBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          shardId_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private long timestamp_ ;
        /**
         * <code>optional int64 timestamp = 3;</code>
         * @return Whether the timestamp field is set.
         */
        @java.lang.Override
        public boolean hasTimestamp() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 timestamp = 3;</code>
         * @return The timestamp.
         */
        @java.lang.Override
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>optional int64 timestamp = 3;</code>
         * @param value The timestamp to set.
         * @return This builder for chaining.
         */
        public Builder setTimestamp(long value) {
  
          timestamp_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 timestamp = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearTimestamp() {
          bitField0_ = (bitField0_ & ~0x00000004);
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private java.lang.Object token_ = "";
        /**
         * <code>optional string token = 4;</code>
         * @return Whether the token field is set.
         */
        public boolean hasToken() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional string token = 4;</code>
         * @return The token.
         */
        public java.lang.String getToken() {
          java.lang.Object ref = token_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              token_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string token = 4;</code>
         * @return The bytes for token.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTokenBytes() {
          java.lang.Object ref = token_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            token_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string token = 4;</code>
         * @param value The token to set.
         * @return This builder for chaining.
         */
        public Builder setToken(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          token_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional string token = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearToken() {
          token_ = getDefaultInstance().getToken();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
          return this;
        }
        /**
         * <code>optional string token = 4;</code>
         * @param value The bytes for token to set.
         * @return This builder for chaining.
         */
        public Builder setTokenBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          token_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetShardIteratorRequest>() {
        @java.lang.Override
        public GetShardIteratorRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetShardIteratorResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return Whether the shardIterator field is set.
       */
      boolean hasShardIterator();
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The shardIterator.
       */
      java.lang.String getShardIterator();
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The bytes for shardIterator.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIteratorBytes();
  
      /**
       * <code>optional string next_token = 2;</code>
       * @return Whether the nextToken field is set.
       */
      boolean hasNextToken();
      /**
       * <code>optional string next_token = 2;</code>
       * @return The nextToken.
       */
      java.lang.String getNextToken();
      /**
       * <code>optional string next_token = 2;</code>
       * @return The bytes for nextToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextTokenBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse}
     */
    public static final class GetShardIteratorResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse)
        GetShardIteratorResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetShardIteratorResponse.class.getName());
      }
      // Use GetShardIteratorResponse.newBuilder() to construct.
      private GetShardIteratorResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetShardIteratorResponse() {
        shardIterator_ = "";
        nextToken_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int SHARD_ITERATOR_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object shardIterator_ = "";
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return Whether the shardIterator field is set.
       */
      @java.lang.Override
      public boolean hasShardIterator() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The shardIterator.
       */
      @java.lang.Override
      public java.lang.String getShardIterator() {
        java.lang.Object ref = shardIterator_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            shardIterator_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The bytes for shardIterator.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIteratorBytes() {
        java.lang.Object ref = shardIterator_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          shardIterator_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int NEXT_TOKEN_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object nextToken_ = "";
      /**
       * <code>optional string next_token = 2;</code>
       * @return Whether the nextToken field is set.
       */
      @java.lang.Override
      public boolean hasNextToken() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional string next_token = 2;</code>
       * @return The nextToken.
       */
      @java.lang.Override
      public java.lang.String getNextToken() {
        java.lang.Object ref = nextToken_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            nextToken_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string next_token = 2;</code>
       * @return The bytes for nextToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextTokenBytes() {
        java.lang.Object ref = nextToken_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nextToken_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasShardIterator()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, shardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, nextToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, shardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, nextToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse) obj;
  
        if (hasShardIterator() != other.hasShardIterator()) return false;
        if (hasShardIterator()) {
          if (!getShardIterator()
              .equals(other.getShardIterator())) return false;
        }
        if (hasNextToken() != other.hasNextToken()) return false;
        if (hasNextToken()) {
          if (!getNextToken()
              .equals(other.getNextToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasShardIterator()) {
          hash = (37 * hash) + SHARD_ITERATOR_FIELD_NUMBER;
          hash = (53 * hash) + getShardIterator().hashCode();
        }
        if (hasNextToken()) {
          hash = (37 * hash) + NEXT_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getNextToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          shardIterator_ = "";
          nextToken_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.shardIterator_ = shardIterator_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.nextToken_ = nextToken_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse.getDefaultInstance()) return this;
          if (other.hasShardIterator()) {
            shardIterator_ = other.shardIterator_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasNextToken()) {
            nextToken_ = other.nextToken_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasShardIterator()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  shardIterator_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  nextToken_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object shardIterator_ = "";
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return Whether the shardIterator field is set.
         */
        public boolean hasShardIterator() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return The shardIterator.
         */
        public java.lang.String getShardIterator() {
          java.lang.Object ref = shardIterator_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              shardIterator_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return The bytes for shardIterator.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getShardIteratorBytes() {
          java.lang.Object ref = shardIterator_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            shardIterator_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @param value The shardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setShardIterator(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          shardIterator_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardIterator() {
          shardIterator_ = getDefaultInstance().getShardIterator();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @param value The bytes for shardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setShardIteratorBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          shardIterator_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.lang.Object nextToken_ = "";
        /**
         * <code>optional string next_token = 2;</code>
         * @return Whether the nextToken field is set.
         */
        public boolean hasNextToken() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string next_token = 2;</code>
         * @return The nextToken.
         */
        public java.lang.String getNextToken() {
          java.lang.Object ref = nextToken_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              nextToken_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string next_token = 2;</code>
         * @return The bytes for nextToken.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNextTokenBytes() {
          java.lang.Object ref = nextToken_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            nextToken_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string next_token = 2;</code>
         * @param value The nextToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextToken(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          nextToken_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_token = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextToken() {
          nextToken_ = getDefaultInstance().getNextToken();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_token = 2;</code>
         * @param value The bytes for nextToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextTokenBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextToken_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetShardIteratorResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetShardIteratorResponse>() {
        @java.lang.Override
        public GetShardIteratorResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetShardIteratorResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetShardIteratorResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetStreamRecordRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return Whether the shardIterator field is set.
       */
      boolean hasShardIterator();
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The shardIterator.
       */
      java.lang.String getShardIterator();
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The bytes for shardIterator.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIteratorBytes();
  
      /**
       * <code>optional int32 limit = 2;</code>
       * @return Whether the limit field is set.
       */
      boolean hasLimit();
      /**
       * <code>optional int32 limit = 2;</code>
       * @return The limit.
       */
      int getLimit();
  
      /**
       * <code>optional string table_name = 3;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>optional string table_name = 3;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>optional string table_name = 3;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest}
     */
    public static final class GetStreamRecordRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest)
        GetStreamRecordRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetStreamRecordRequest.class.getName());
      }
      // Use GetStreamRecordRequest.newBuilder() to construct.
      private GetStreamRecordRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetStreamRecordRequest() {
        shardIterator_ = "";
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int SHARD_ITERATOR_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object shardIterator_ = "";
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return Whether the shardIterator field is set.
       */
      @java.lang.Override
      public boolean hasShardIterator() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The shardIterator.
       */
      @java.lang.Override
      public java.lang.String getShardIterator() {
        java.lang.Object ref = shardIterator_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            shardIterator_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string shard_iterator = 1;</code>
       * @return The bytes for shardIterator.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getShardIteratorBytes() {
        java.lang.Object ref = shardIterator_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          shardIterator_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int LIMIT_FIELD_NUMBER = 2;
      private int limit_ = 0;
      /**
       * <code>optional int32 limit = 2;</code>
       * @return Whether the limit field is set.
       */
      @java.lang.Override
      public boolean hasLimit() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int32 limit = 2;</code>
       * @return The limit.
       */
      @java.lang.Override
      public int getLimit() {
        return limit_;
      }
  
      public static final int TABLE_NAME_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>optional string table_name = 3;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional string table_name = 3;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string table_name = 3;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasShardIterator()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, shardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, limit_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 3, tableName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, shardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, limit_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(3, tableName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest) obj;
  
        if (hasShardIterator() != other.hasShardIterator()) return false;
        if (hasShardIterator()) {
          if (!getShardIterator()
              .equals(other.getShardIterator())) return false;
        }
        if (hasLimit() != other.hasLimit()) return false;
        if (hasLimit()) {
          if (getLimit()
              != other.getLimit()) return false;
        }
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasShardIterator()) {
          hash = (37 * hash) + SHARD_ITERATOR_FIELD_NUMBER;
          hash = (53 * hash) + getShardIterator().hashCode();
        }
        if (hasLimit()) {
          hash = (37 * hash) + LIMIT_FIELD_NUMBER;
          hash = (53 * hash) + getLimit();
        }
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          shardIterator_ = "";
          limit_ = 0;
          tableName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.shardIterator_ = shardIterator_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.limit_ = limit_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest.getDefaultInstance()) return this;
          if (other.hasShardIterator()) {
            shardIterator_ = other.shardIterator_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasLimit()) {
            setLimit(other.getLimit());
          }
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000004;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasShardIterator()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  shardIterator_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  limit_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 26: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object shardIterator_ = "";
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return Whether the shardIterator field is set.
         */
        public boolean hasShardIterator() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return The shardIterator.
         */
        public java.lang.String getShardIterator() {
          java.lang.Object ref = shardIterator_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              shardIterator_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return The bytes for shardIterator.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getShardIteratorBytes() {
          java.lang.Object ref = shardIterator_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            shardIterator_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @param value The shardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setShardIterator(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          shardIterator_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearShardIterator() {
          shardIterator_ = getDefaultInstance().getShardIterator();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string shard_iterator = 1;</code>
         * @param value The bytes for shardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setShardIteratorBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          shardIterator_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int limit_ ;
        /**
         * <code>optional int32 limit = 2;</code>
         * @return Whether the limit field is set.
         */
        @java.lang.Override
        public boolean hasLimit() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int32 limit = 2;</code>
         * @return The limit.
         */
        @java.lang.Override
        public int getLimit() {
          return limit_;
        }
        /**
         * <code>optional int32 limit = 2;</code>
         * @param value The limit to set.
         * @return This builder for chaining.
         */
        public Builder setLimit(int value) {
  
          limit_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 limit = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearLimit() {
          bitField0_ = (bitField0_ & ~0x00000002);
          limit_ = 0;
          onChanged();
          return this;
        }
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>optional string table_name = 3;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional string table_name = 3;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string table_name = 3;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string table_name = 3;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 3;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetStreamRecordRequest>() {
        @java.lang.Override
        public GetStreamRecordRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetStreamRecordResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> 
          getStreamRecordsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getStreamRecords(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      int getStreamRecordsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder> 
          getStreamRecordsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder getStreamRecordsOrBuilder(
          int index);
  
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return Whether the nextShardIterator field is set.
       */
      boolean hasNextShardIterator();
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return The nextShardIterator.
       */
      java.lang.String getNextShardIterator();
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return The bytes for nextShardIterator.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextShardIteratorBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional bool may_more_record = 4;</code>
       * @return Whether the mayMoreRecord field is set.
       */
      boolean hasMayMoreRecord();
      /**
       * <code>optional bool may_more_record = 4;</code>
       * @return The mayMoreRecord.
       */
      boolean getMayMoreRecord();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse}
     */
    public static final class GetStreamRecordResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse)
        GetStreamRecordResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          GetStreamRecordResponse.class.getName());
      }
      // Use GetStreamRecordResponse.newBuilder() to construct.
      private GetStreamRecordResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private GetStreamRecordResponse() {
        streamRecords_ = java.util.Collections.emptyList();
        nextShardIterator_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.Builder.class);
      }
  
      public interface StreamRecordOrBuilder extends
          // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord)
          com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
         * @return Whether the actionType field is set.
         */
        boolean hasActionType();
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
         * @return The actionType.
         */
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType getActionType();
  
        /**
         * <code>required bytes record = 2;</code>
         * @return Whether the record field is set.
         */
        boolean hasRecord();
        /**
         * <code>required bytes record = 2;</code>
         * @return The record.
         */
        com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRecord();
  
        /**
         * <code>optional bytes origin_record = 3;</code>
         * @return Whether the originRecord field is set.
         */
        boolean hasOriginRecord();
        /**
         * <code>optional bytes origin_record = 3;</code>
         * @return The originRecord.
         */
        com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getOriginRecord();
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord}
       */
      public static final class StreamRecord extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord)
          StreamRecordOrBuilder {
      private static final long serialVersionUID = 0L;
        static {
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
            com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
            /* major= */ 4,
            /* minor= */ 28,
            /* patch= */ 2,
            /* suffix= */ "",
            StreamRecord.class.getName());
        }
        // Use StreamRecord.newBuilder() to construct.
        private StreamRecord(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
          super(builder);
        }
        private StreamRecord() {
          actionType_ = 1;
          record_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          originRecord_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        }
  
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder.class);
        }
  
        private int bitField0_;
        public static final int ACTION_TYPE_FIELD_NUMBER = 1;
        private int actionType_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
         * @return Whether the actionType field is set.
         */
        @java.lang.Override public boolean hasActionType() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
         * @return The actionType.
         */
        @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType getActionType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType.forNumber(actionType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType.PUT_ROW : result;
        }
  
        public static final int RECORD_FIELD_NUMBER = 2;
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString record_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes record = 2;</code>
         * @return Whether the record field is set.
         */
        @java.lang.Override
        public boolean hasRecord() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes record = 2;</code>
         * @return The record.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRecord() {
          return record_;
        }
  
        public static final int ORIGIN_RECORD_FIELD_NUMBER = 3;
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString originRecord_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes origin_record = 3;</code>
         * @return Whether the originRecord field is set.
         */
        @java.lang.Override
        public boolean hasOriginRecord() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bytes origin_record = 3;</code>
         * @return The originRecord.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getOriginRecord() {
          return originRecord_;
        }
  
        private byte memoizedIsInitialized = -1;
        @java.lang.Override
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;
  
          if (!hasActionType()) {
            memoizedIsInitialized = 0;
            return false;
          }
          if (!hasRecord()) {
            memoizedIsInitialized = 0;
            return false;
          }
          memoizedIsInitialized = 1;
          return true;
        }
  
        @java.lang.Override
        public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          if (((bitField0_ & 0x00000001) != 0)) {
            output.writeEnum(1, actionType_);
          }
          if (((bitField0_ & 0x00000002) != 0)) {
            output.writeBytes(2, record_);
          }
          if (((bitField0_ & 0x00000004) != 0)) {
            output.writeBytes(3, originRecord_);
          }
          getUnknownFields().writeTo(output);
        }
  
        @java.lang.Override
        public int getSerializedSize() {
          int size = memoizedSize;
          if (size != -1) return size;
  
          size = 0;
          if (((bitField0_ & 0x00000001) != 0)) {
            size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeEnumSize(1, actionType_);
          }
          if (((bitField0_ & 0x00000002) != 0)) {
            size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSize(2, record_);
          }
          if (((bitField0_ & 0x00000004) != 0)) {
            size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSize(3, originRecord_);
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSize = size;
          return size;
        }
  
        @java.lang.Override
        public boolean equals(final java.lang.Object obj) {
          if (obj == this) {
           return true;
          }
          if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord)) {
            return super.equals(obj);
          }
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord) obj;
  
          if (hasActionType() != other.hasActionType()) return false;
          if (hasActionType()) {
            if (actionType_ != other.actionType_) return false;
          }
          if (hasRecord() != other.hasRecord()) return false;
          if (hasRecord()) {
            if (!getRecord()
                .equals(other.getRecord())) return false;
          }
          if (hasOriginRecord() != other.hasOriginRecord()) return false;
          if (hasOriginRecord()) {
            if (!getOriginRecord()
                .equals(other.getOriginRecord())) return false;
          }
          if (!getUnknownFields().equals(other.getUnknownFields())) return false;
          return true;
        }
  
        @java.lang.Override
        public int hashCode() {
          if (memoizedHashCode != 0) {
            return memoizedHashCode;
          }
          int hash = 41;
          hash = (19 * hash) + getDescriptor().hashCode();
          if (hasActionType()) {
            hash = (37 * hash) + ACTION_TYPE_FIELD_NUMBER;
            hash = (53 * hash) + actionType_;
          }
          if (hasRecord()) {
            hash = (37 * hash) + RECORD_FIELD_NUMBER;
            hash = (53 * hash) + getRecord().hashCode();
          }
          if (hasOriginRecord()) {
            hash = (37 * hash) + ORIGIN_RECORD_FIELD_NUMBER;
            hash = (53 * hash) + getOriginRecord().hashCode();
          }
          hash = (29 * hash) + getUnknownFields().hashCode();
          memoizedHashCode = hash;
          return hash;
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            java.nio.ByteBuffer data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            java.nio.ByteBuffer data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(byte[] data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            byte[] data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            java.io.InputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input, extensionRegistry);
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseDelimitedWithIOException(PARSER, input);
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseDelimitedFrom(
            java.io.InputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input, extensionRegistry);
        }
  
        @java.lang.Override
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder() {
          return DEFAULT_INSTANCE.toBuilder();
        }
        public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord}
         */
        public static final class Builder extends
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
            // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord)
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder {
          public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor;
          }
  
          @java.lang.Override
          protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder.class);
          }
  
          // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.newBuilder()
          private Builder() {
  
          }
  
          private Builder(
              com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
  
          }
          @java.lang.Override
          public Builder clear() {
            super.clear();
            bitField0_ = 0;
            actionType_ = 1;
            record_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
            originRecord_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
            return this;
          }
  
          @java.lang.Override
          public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor;
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getDefaultInstanceForType() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.getDefaultInstance();
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord build() {
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord buildPartial() {
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord(this);
            if (bitField0_ != 0) { buildPartial0(result); }
            onBuilt();
            return result;
          }
  
          private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord result) {
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) != 0)) {
              result.actionType_ = actionType_;
              to_bitField0_ |= 0x00000001;
            }
            if (((from_bitField0_ & 0x00000002) != 0)) {
              result.record_ = record_;
              to_bitField0_ |= 0x00000002;
            }
            if (((from_bitField0_ & 0x00000004) != 0)) {
              result.originRecord_ = originRecord_;
              to_bitField0_ |= 0x00000004;
            }
            result.bitField0_ |= to_bitField0_;
          }
  
          @java.lang.Override
          public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
            if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord) {
              return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }
  
          public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord other) {
            if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.getDefaultInstance()) return this;
            if (other.hasActionType()) {
              setActionType(other.getActionType());
            }
            if (other.hasRecord()) {
              setRecord(other.getRecord());
            }
            if (other.hasOriginRecord()) {
              setOriginRecord(other.getOriginRecord());
            }
            this.mergeUnknownFields(other.getUnknownFields());
            onChanged();
            return this;
          }
  
          @java.lang.Override
          public final boolean isInitialized() {
            if (!hasActionType()) {
              return false;
            }
            if (!hasRecord()) {
              return false;
            }
            return true;
          }
  
          @java.lang.Override
          public Builder mergeFrom(
              com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
              com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            if (extensionRegistry == null) {
              throw new java.lang.NullPointerException();
            }
            try {
              boolean done = false;
              while (!done) {
                int tag = input.readTag();
                switch (tag) {
                  case 0:
                    done = true;
                    break;
                  case 8: {
                    int tmpRaw = input.readEnum();
                    com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType tmpValue =
                        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType.forNumber(tmpRaw);
                    if (tmpValue == null) {
                      mergeUnknownVarintField(1, tmpRaw);
                    } else {
                      actionType_ = tmpRaw;
                      bitField0_ |= 0x00000001;
                    }
                    break;
                  } // case 8
                  case 18: {
                    record_ = input.readBytes();
                    bitField0_ |= 0x00000002;
                    break;
                  } // case 18
                  case 26: {
                    originRecord_ = input.readBytes();
                    bitField0_ |= 0x00000004;
                    break;
                  } // case 26
                  default: {
                    if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                      done = true; // was an endgroup tag
                    }
                    break;
                  } // default:
                } // switch (tag)
              } // while (!done)
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.unwrapIOException();
            } finally {
              onChanged();
            } // finally
            return this;
          }
          private int bitField0_;
  
          private int actionType_ = 1;
          /**
           * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
           * @return Whether the actionType field is set.
           */
          @java.lang.Override public boolean hasActionType() {
            return ((bitField0_ & 0x00000001) != 0);
          }
          /**
           * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
           * @return The actionType.
           */
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType getActionType() {
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType.forNumber(actionType_);
            return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType.PUT_ROW : result;
          }
          /**
           * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
           * @param value The actionType to set.
           * @return This builder for chaining.
           */
          public Builder setActionType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ActionType value) {
            if (value == null) {
              throw new NullPointerException();
            }
            bitField0_ |= 0x00000001;
            actionType_ = value.getNumber();
            onChanged();
            return this;
          }
          /**
           * <code>required .com.alicloud.openservices.tablestore.core.protocol.ActionType action_type = 1;</code>
           * @return This builder for chaining.
           */
          public Builder clearActionType() {
            bitField0_ = (bitField0_ & ~0x00000001);
            actionType_ = 1;
            onChanged();
            return this;
          }
  
          private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString record_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          /**
           * <code>required bytes record = 2;</code>
           * @return Whether the record field is set.
           */
          @java.lang.Override
          public boolean hasRecord() {
            return ((bitField0_ & 0x00000002) != 0);
          }
          /**
           * <code>required bytes record = 2;</code>
           * @return The record.
           */
          @java.lang.Override
          public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRecord() {
            return record_;
          }
          /**
           * <code>required bytes record = 2;</code>
           * @param value The record to set.
           * @return This builder for chaining.
           */
          public Builder setRecord(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
            if (value == null) { throw new NullPointerException(); }
            record_ = value;
            bitField0_ |= 0x00000002;
            onChanged();
            return this;
          }
          /**
           * <code>required bytes record = 2;</code>
           * @return This builder for chaining.
           */
          public Builder clearRecord() {
            bitField0_ = (bitField0_ & ~0x00000002);
            record_ = getDefaultInstance().getRecord();
            onChanged();
            return this;
          }
  
          private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString originRecord_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          /**
           * <code>optional bytes origin_record = 3;</code>
           * @return Whether the originRecord field is set.
           */
          @java.lang.Override
          public boolean hasOriginRecord() {
            return ((bitField0_ & 0x00000004) != 0);
          }
          /**
           * <code>optional bytes origin_record = 3;</code>
           * @return The originRecord.
           */
          @java.lang.Override
          public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getOriginRecord() {
            return originRecord_;
          }
          /**
           * <code>optional bytes origin_record = 3;</code>
           * @param value The originRecord to set.
           * @return This builder for chaining.
           */
          public Builder setOriginRecord(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
            if (value == null) { throw new NullPointerException(); }
            originRecord_ = value;
            bitField0_ |= 0x00000004;
            onChanged();
            return this;
          }
          /**
           * <code>optional bytes origin_record = 3;</code>
           * @return This builder for chaining.
           */
          public Builder clearOriginRecord() {
            bitField0_ = (bitField0_ & ~0x00000004);
            originRecord_ = getDefaultInstance().getOriginRecord();
            onChanged();
            return this;
          }
  
          // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord)
        }
  
        // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord)
        private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord DEFAULT_INSTANCE;
        static {
          DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord();
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }
  
        private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamRecord>
            PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<StreamRecord>() {
          @java.lang.Override
          public StreamRecord parsePartialFrom(
              com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
              com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
            Builder builder = newBuilder();
            try {
              builder.mergeFrom(input, extensionRegistry);
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.setUnfinishedMessage(builder.buildPartial());
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
              throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
            } catch (java.io.IOException e) {
              throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                  .setUnfinishedMessage(builder.buildPartial());
            }
            return builder.buildPartial();
          }
        };
  
        public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamRecord> parser() {
          return PARSER;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<StreamRecord> getParserForType() {
          return PARSER;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getDefaultInstanceForType() {
          return DEFAULT_INSTANCE;
        }
  
      }
  
      private int bitField0_;
      public static final int STREAM_RECORDS_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> streamRecords_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> getStreamRecordsList() {
        return streamRecords_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder> 
          getStreamRecordsOrBuilderList() {
        return streamRecords_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      @java.lang.Override
      public int getStreamRecordsCount() {
        return streamRecords_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getStreamRecords(int index) {
        return streamRecords_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder getStreamRecordsOrBuilder(
          int index) {
        return streamRecords_.get(index);
      }
  
      public static final int NEXT_SHARD_ITERATOR_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private volatile java.lang.Object nextShardIterator_ = "";
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return Whether the nextShardIterator field is set.
       */
      @java.lang.Override
      public boolean hasNextShardIterator() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return The nextShardIterator.
       */
      @java.lang.Override
      public java.lang.String getNextShardIterator() {
        java.lang.Object ref = nextShardIterator_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            nextShardIterator_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string next_shard_iterator = 2;</code>
       * @return The bytes for nextShardIterator.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextShardIteratorBytes() {
        java.lang.Object ref = nextShardIterator_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nextShardIterator_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CONSUMED_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int MAY_MORE_RECORD_FIELD_NUMBER = 4;
      private boolean mayMoreRecord_ = false;
      /**
       * <code>optional bool may_more_record = 4;</code>
       * @return Whether the mayMoreRecord field is set.
       */
      @java.lang.Override
      public boolean hasMayMoreRecord() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bool may_more_record = 4;</code>
       * @return The mayMoreRecord.
       */
      @java.lang.Override
      public boolean getMayMoreRecord() {
        return mayMoreRecord_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        for (int i = 0; i < getStreamRecordsCount(); i++) {
          if (!getStreamRecords(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasConsumed()) {
          if (!getConsumed().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < streamRecords_.size(); i++) {
          output.writeMessage(1, streamRecords_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, nextShardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(3, getConsumed());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBool(4, mayMoreRecord_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < streamRecords_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, streamRecords_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(2, nextShardIterator_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getConsumed());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(4, mayMoreRecord_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse) obj;
  
        if (!getStreamRecordsList()
            .equals(other.getStreamRecordsList())) return false;
        if (hasNextShardIterator() != other.hasNextShardIterator()) return false;
        if (hasNextShardIterator()) {
          if (!getNextShardIterator()
              .equals(other.getNextShardIterator())) return false;
        }
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasMayMoreRecord() != other.hasMayMoreRecord()) return false;
        if (hasMayMoreRecord()) {
          if (getMayMoreRecord()
              != other.getMayMoreRecord()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getStreamRecordsCount() > 0) {
          hash = (37 * hash) + STREAM_RECORDS_FIELD_NUMBER;
          hash = (53 * hash) + getStreamRecordsList().hashCode();
        }
        if (hasNextShardIterator()) {
          hash = (37 * hash) + NEXT_SHARD_ITERATOR_FIELD_NUMBER;
          hash = (53 * hash) + getNextShardIterator().hashCode();
        }
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasMayMoreRecord()) {
          hash = (37 * hash) + MAY_MORE_RECORD_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getMayMoreRecord());
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getStreamRecordsFieldBuilder();
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (streamRecordsBuilder_ == null) {
            streamRecords_ = java.util.Collections.emptyList();
          } else {
            streamRecords_ = null;
            streamRecordsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          nextShardIterator_ = "";
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          mayMoreRecord_ = false;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse result) {
          if (streamRecordsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              streamRecords_ = java.util.Collections.unmodifiableList(streamRecords_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.streamRecords_ = streamRecords_;
          } else {
            result.streamRecords_ = streamRecordsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.nextShardIterator_ = nextShardIterator_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.mayMoreRecord_ = mayMoreRecord_;
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.getDefaultInstance()) return this;
          if (streamRecordsBuilder_ == null) {
            if (!other.streamRecords_.isEmpty()) {
              if (streamRecords_.isEmpty()) {
                streamRecords_ = other.streamRecords_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureStreamRecordsIsMutable();
                streamRecords_.addAll(other.streamRecords_);
              }
              onChanged();
            }
          } else {
            if (!other.streamRecords_.isEmpty()) {
              if (streamRecordsBuilder_.isEmpty()) {
                streamRecordsBuilder_.dispose();
                streamRecordsBuilder_ = null;
                streamRecords_ = other.streamRecords_;
                bitField0_ = (bitField0_ & ~0x00000001);
                streamRecordsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getStreamRecordsFieldBuilder() : null;
              } else {
                streamRecordsBuilder_.addAllMessages(other.streamRecords_);
              }
            }
          }
          if (other.hasNextShardIterator()) {
            nextShardIterator_ = other.nextShardIterator_;
            bitField0_ |= 0x00000002;
            onChanged();
          }
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasMayMoreRecord()) {
            setMayMoreRecord(other.getMayMoreRecord());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getStreamRecordsCount(); i++) {
            if (!getStreamRecords(i).isInitialized()) {
              return false;
            }
          }
          if (hasConsumed()) {
            if (!getConsumed().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.parser(),
                          extensionRegistry);
                  if (streamRecordsBuilder_ == null) {
                    ensureStreamRecordsIsMutable();
                    streamRecords_.add(m);
                  } else {
                    streamRecordsBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                case 18: {
                  nextShardIterator_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 32: {
                  mayMoreRecord_ = input.readBool();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 32
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> streamRecords_ =
          java.util.Collections.emptyList();
        private void ensureStreamRecordsIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            streamRecords_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord>(streamRecords_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder> streamRecordsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> getStreamRecordsList() {
          if (streamRecordsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(streamRecords_);
          } else {
            return streamRecordsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public int getStreamRecordsCount() {
          if (streamRecordsBuilder_ == null) {
            return streamRecords_.size();
          } else {
            return streamRecordsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord getStreamRecords(int index) {
          if (streamRecordsBuilder_ == null) {
            return streamRecords_.get(index);
          } else {
            return streamRecordsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder setStreamRecords(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord value) {
          if (streamRecordsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamRecordsIsMutable();
            streamRecords_.set(index, value);
            onChanged();
          } else {
            streamRecordsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder setStreamRecords(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder builderForValue) {
          if (streamRecordsBuilder_ == null) {
            ensureStreamRecordsIsMutable();
            streamRecords_.set(index, builderForValue.build());
            onChanged();
          } else {
            streamRecordsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder addStreamRecords(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord value) {
          if (streamRecordsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamRecordsIsMutable();
            streamRecords_.add(value);
            onChanged();
          } else {
            streamRecordsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder addStreamRecords(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord value) {
          if (streamRecordsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureStreamRecordsIsMutable();
            streamRecords_.add(index, value);
            onChanged();
          } else {
            streamRecordsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder addStreamRecords(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder builderForValue) {
          if (streamRecordsBuilder_ == null) {
            ensureStreamRecordsIsMutable();
            streamRecords_.add(builderForValue.build());
            onChanged();
          } else {
            streamRecordsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder addStreamRecords(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder builderForValue) {
          if (streamRecordsBuilder_ == null) {
            ensureStreamRecordsIsMutable();
            streamRecords_.add(index, builderForValue.build());
            onChanged();
          } else {
            streamRecordsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder addAllStreamRecords(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord> values) {
          if (streamRecordsBuilder_ == null) {
            ensureStreamRecordsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, streamRecords_);
            onChanged();
          } else {
            streamRecordsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder clearStreamRecords() {
          if (streamRecordsBuilder_ == null) {
            streamRecords_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            streamRecordsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public Builder removeStreamRecords(int index) {
          if (streamRecordsBuilder_ == null) {
            ensureStreamRecordsIsMutable();
            streamRecords_.remove(index);
            onChanged();
          } else {
            streamRecordsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder getStreamRecordsBuilder(
            int index) {
          return getStreamRecordsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder getStreamRecordsOrBuilder(
            int index) {
          if (streamRecordsBuilder_ == null) {
            return streamRecords_.get(index);  } else {
            return streamRecordsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder> 
             getStreamRecordsOrBuilderList() {
          if (streamRecordsBuilder_ != null) {
            return streamRecordsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(streamRecords_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder addStreamRecordsBuilder() {
          return getStreamRecordsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder addStreamRecordsBuilder(
            int index) {
          return getStreamRecordsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse.StreamRecord stream_records = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder> 
             getStreamRecordsBuilderList() {
          return getStreamRecordsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder> 
            getStreamRecordsFieldBuilder() {
          if (streamRecordsBuilder_ == null) {
            streamRecordsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecord.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse.StreamRecordOrBuilder>(
                    streamRecords_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            streamRecords_ = null;
          }
          return streamRecordsBuilder_;
        }
  
        private java.lang.Object nextShardIterator_ = "";
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @return Whether the nextShardIterator field is set.
         */
        public boolean hasNextShardIterator() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @return The nextShardIterator.
         */
        public java.lang.String getNextShardIterator() {
          java.lang.Object ref = nextShardIterator_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              nextShardIterator_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @return The bytes for nextShardIterator.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNextShardIteratorBytes() {
          java.lang.Object ref = nextShardIterator_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            nextShardIterator_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @param value The nextShardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setNextShardIterator(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          nextShardIterator_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextShardIterator() {
          nextShardIterator_ = getDefaultInstance().getNextShardIterator();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_shard_iterator = 2;</code>
         * @param value The bytes for nextShardIterator to set.
         * @return This builder for chaining.
         */
        public Builder setNextShardIteratorBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextShardIterator_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000004);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private boolean mayMoreRecord_ ;
        /**
         * <code>optional bool may_more_record = 4;</code>
         * @return Whether the mayMoreRecord field is set.
         */
        @java.lang.Override
        public boolean hasMayMoreRecord() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional bool may_more_record = 4;</code>
         * @return The mayMoreRecord.
         */
        @java.lang.Override
        public boolean getMayMoreRecord() {
          return mayMoreRecord_;
        }
        /**
         * <code>optional bool may_more_record = 4;</code>
         * @param value The mayMoreRecord to set.
         * @return This builder for chaining.
         */
        public Builder setMayMoreRecord(boolean value) {
  
          mayMoreRecord_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional bool may_more_record = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearMayMoreRecord() {
          bitField0_ = (bitField0_ & ~0x00000008);
          mayMoreRecord_ = false;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.GetStreamRecordResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<GetStreamRecordResponse>() {
        @java.lang.Override
        public GetStreamRecordResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<GetStreamRecordResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.GetStreamRecordResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ComputeSplitPointsBySizeRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <pre>
       * in 100MB
       * </pre>
       *
       * <code>required int64 split_size = 2;</code>
       * @return Whether the splitSize field is set.
       */
      boolean hasSplitSize();
      /**
       * <pre>
       * in 100MB
       * </pre>
       *
       * <code>required int64 split_size = 2;</code>
       * @return The splitSize.
       */
      long getSplitSize();
  
      /**
       * <code>optional int64 split_size_unit_in_byte = 3;</code>
       * @return Whether the splitSizeUnitInByte field is set.
       */
      boolean hasSplitSizeUnitInByte();
      /**
       * <code>optional int64 split_size_unit_in_byte = 3;</code>
       * @return The splitSizeUnitInByte.
       */
      long getSplitSizeUnitInByte();
  
      /**
       * <code>optional int32 split_point_limit = 4;</code>
       * @return Whether the splitPointLimit field is set.
       */
      boolean hasSplitPointLimit();
      /**
       * <code>optional int32 split_point_limit = 4;</code>
       * @return The splitPointLimit.
       */
      int getSplitPointLimit();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest}
     */
    public static final class ComputeSplitPointsBySizeRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest)
        ComputeSplitPointsBySizeRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ComputeSplitPointsBySizeRequest.class.getName());
      }
      // Use ComputeSplitPointsBySizeRequest.newBuilder() to construct.
      private ComputeSplitPointsBySizeRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ComputeSplitPointsBySizeRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int SPLIT_SIZE_FIELD_NUMBER = 2;
      private long splitSize_ = 0L;
      /**
       * <pre>
       * in 100MB
       * </pre>
       *
       * <code>required int64 split_size = 2;</code>
       * @return Whether the splitSize field is set.
       */
      @java.lang.Override
      public boolean hasSplitSize() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <pre>
       * in 100MB
       * </pre>
       *
       * <code>required int64 split_size = 2;</code>
       * @return The splitSize.
       */
      @java.lang.Override
      public long getSplitSize() {
        return splitSize_;
      }
  
      public static final int SPLIT_SIZE_UNIT_IN_BYTE_FIELD_NUMBER = 3;
      private long splitSizeUnitInByte_ = 0L;
      /**
       * <code>optional int64 split_size_unit_in_byte = 3;</code>
       * @return Whether the splitSizeUnitInByte field is set.
       */
      @java.lang.Override
      public boolean hasSplitSizeUnitInByte() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 split_size_unit_in_byte = 3;</code>
       * @return The splitSizeUnitInByte.
       */
      @java.lang.Override
      public long getSplitSizeUnitInByte() {
        return splitSizeUnitInByte_;
      }
  
      public static final int SPLIT_POINT_LIMIT_FIELD_NUMBER = 4;
      private int splitPointLimit_ = 0;
      /**
       * <code>optional int32 split_point_limit = 4;</code>
       * @return Whether the splitPointLimit field is set.
       */
      @java.lang.Override
      public boolean hasSplitPointLimit() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional int32 split_point_limit = 4;</code>
       * @return The splitPointLimit.
       */
      @java.lang.Override
      public int getSplitPointLimit() {
        return splitPointLimit_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasSplitSize()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt64(2, splitSize_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, splitSizeUnitInByte_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeInt32(4, splitPointLimit_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(2, splitSize_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, splitSizeUnitInByte_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(4, splitPointLimit_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasSplitSize() != other.hasSplitSize()) return false;
        if (hasSplitSize()) {
          if (getSplitSize()
              != other.getSplitSize()) return false;
        }
        if (hasSplitSizeUnitInByte() != other.hasSplitSizeUnitInByte()) return false;
        if (hasSplitSizeUnitInByte()) {
          if (getSplitSizeUnitInByte()
              != other.getSplitSizeUnitInByte()) return false;
        }
        if (hasSplitPointLimit() != other.hasSplitPointLimit()) return false;
        if (hasSplitPointLimit()) {
          if (getSplitPointLimit()
              != other.getSplitPointLimit()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasSplitSize()) {
          hash = (37 * hash) + SPLIT_SIZE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getSplitSize());
        }
        if (hasSplitSizeUnitInByte()) {
          hash = (37 * hash) + SPLIT_SIZE_UNIT_IN_BYTE_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getSplitSizeUnitInByte());
        }
        if (hasSplitPointLimit()) {
          hash = (37 * hash) + SPLIT_POINT_LIMIT_FIELD_NUMBER;
          hash = (53 * hash) + getSplitPointLimit();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          splitSize_ = 0L;
          splitSizeUnitInByte_ = 0L;
          splitPointLimit_ = 0;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.splitSize_ = splitSize_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.splitSizeUnitInByte_ = splitSizeUnitInByte_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.splitPointLimit_ = splitPointLimit_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasSplitSize()) {
            setSplitSize(other.getSplitSize());
          }
          if (other.hasSplitSizeUnitInByte()) {
            setSplitSizeUnitInByte(other.getSplitSizeUnitInByte());
          }
          if (other.hasSplitPointLimit()) {
            setSplitPointLimit(other.getSplitPointLimit());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasSplitSize()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  splitSize_ = input.readInt64();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                case 24: {
                  splitSizeUnitInByte_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                case 32: {
                  splitPointLimit_ = input.readInt32();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 32
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private long splitSize_ ;
        /**
         * <pre>
         * in 100MB
         * </pre>
         *
         * <code>required int64 split_size = 2;</code>
         * @return Whether the splitSize field is set.
         */
        @java.lang.Override
        public boolean hasSplitSize() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <pre>
         * in 100MB
         * </pre>
         *
         * <code>required int64 split_size = 2;</code>
         * @return The splitSize.
         */
        @java.lang.Override
        public long getSplitSize() {
          return splitSize_;
        }
        /**
         * <pre>
         * in 100MB
         * </pre>
         *
         * <code>required int64 split_size = 2;</code>
         * @param value The splitSize to set.
         * @return This builder for chaining.
         */
        public Builder setSplitSize(long value) {
  
          splitSize_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * in 100MB
         * </pre>
         *
         * <code>required int64 split_size = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearSplitSize() {
          bitField0_ = (bitField0_ & ~0x00000002);
          splitSize_ = 0L;
          onChanged();
          return this;
        }
  
        private long splitSizeUnitInByte_ ;
        /**
         * <code>optional int64 split_size_unit_in_byte = 3;</code>
         * @return Whether the splitSizeUnitInByte field is set.
         */
        @java.lang.Override
        public boolean hasSplitSizeUnitInByte() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 split_size_unit_in_byte = 3;</code>
         * @return The splitSizeUnitInByte.
         */
        @java.lang.Override
        public long getSplitSizeUnitInByte() {
          return splitSizeUnitInByte_;
        }
        /**
         * <code>optional int64 split_size_unit_in_byte = 3;</code>
         * @param value The splitSizeUnitInByte to set.
         * @return This builder for chaining.
         */
        public Builder setSplitSizeUnitInByte(long value) {
  
          splitSizeUnitInByte_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 split_size_unit_in_byte = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearSplitSizeUnitInByte() {
          bitField0_ = (bitField0_ & ~0x00000004);
          splitSizeUnitInByte_ = 0L;
          onChanged();
          return this;
        }
  
        private int splitPointLimit_ ;
        /**
         * <code>optional int32 split_point_limit = 4;</code>
         * @return Whether the splitPointLimit field is set.
         */
        @java.lang.Override
        public boolean hasSplitPointLimit() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional int32 split_point_limit = 4;</code>
         * @return The splitPointLimit.
         */
        @java.lang.Override
        public int getSplitPointLimit() {
          return splitPointLimit_;
        }
        /**
         * <code>optional int32 split_point_limit = 4;</code>
         * @param value The splitPointLimit to set.
         * @return This builder for chaining.
         */
        public Builder setSplitPointLimit(int value) {
  
          splitPointLimit_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 split_point_limit = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearSplitPointLimit() {
          bitField0_ = (bitField0_ & ~0x00000008);
          splitPointLimit_ = 0;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ComputeSplitPointsBySizeRequest>() {
        @java.lang.Override
        public ComputeSplitPointsBySizeRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ComputeSplitPointsBySizeResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> 
          getSchemaList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getSchema(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      int getSchemaCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
          getSchemaOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getSchemaOrBuilder(
          int index);
  
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @return A list containing the splitPoints.
       */
      java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> getSplitPointsList();
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @return The count of splitPoints.
       */
      int getSplitPointsCount();
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @param index The index of the element to return.
       * @return The splitPoints at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSplitPoints(int index);
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> 
          getLocationsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getLocations(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      int getLocationsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder> 
          getLocationsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder getLocationsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse}
     */
    public static final class ComputeSplitPointsBySizeResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse)
        ComputeSplitPointsBySizeResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ComputeSplitPointsBySizeResponse.class.getName());
      }
      // Use ComputeSplitPointsBySizeResponse.newBuilder() to construct.
      private ComputeSplitPointsBySizeResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ComputeSplitPointsBySizeResponse() {
        schema_ = java.util.Collections.emptyList();
        splitPoints_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        locations_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.Builder.class);
      }
  
      public interface SplitLocationOrBuilder extends
          // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation)
          com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
        /**
         * <code>required string location = 1;</code>
         * @return Whether the location field is set.
         */
        boolean hasLocation();
        /**
         * <code>required string location = 1;</code>
         * @return The location.
         */
        java.lang.String getLocation();
        /**
         * <code>required string location = 1;</code>
         * @return The bytes for location.
         */
        com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getLocationBytes();
  
        /**
         * <code>required sint64 repeat = 2;</code>
         * @return Whether the repeat field is set.
         */
        boolean hasRepeat();
        /**
         * <code>required sint64 repeat = 2;</code>
         * @return The repeat.
         */
        long getRepeat();
      }
      /**
       * <pre>
       * *
       * Locations where splits lies in.
       *
       * By the managed nature of TableStore, these locations are no more than hints.
       * If a location is not suitable to be seen, an empty string will be placed.
       * </pre>
       *
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation}
       */
      public static final class SplitLocation extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
          // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation)
          SplitLocationOrBuilder {
      private static final long serialVersionUID = 0L;
        static {
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
            com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
            /* major= */ 4,
            /* minor= */ 28,
            /* patch= */ 2,
            /* suffix= */ "",
            SplitLocation.class.getName());
        }
        // Use SplitLocation.newBuilder() to construct.
        private SplitLocation(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
          super(builder);
        }
        private SplitLocation() {
          location_ = "";
        }
  
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder.class);
        }
  
        private int bitField0_;
        public static final int LOCATION_FIELD_NUMBER = 1;
        @SuppressWarnings("serial")
        private volatile java.lang.Object location_ = "";
        /**
         * <code>required string location = 1;</code>
         * @return Whether the location field is set.
         */
        @java.lang.Override
        public boolean hasLocation() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string location = 1;</code>
         * @return The location.
         */
        @java.lang.Override
        public java.lang.String getLocation() {
          java.lang.Object ref = location_;
          if (ref instanceof java.lang.String) {
            return (java.lang.String) ref;
          } else {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              location_ = s;
            }
            return s;
          }
        }
        /**
         * <code>required string location = 1;</code>
         * @return The bytes for location.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getLocationBytes() {
          java.lang.Object ref = location_;
          if (ref instanceof java.lang.String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            location_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
  
        public static final int REPEAT_FIELD_NUMBER = 2;
        private long repeat_ = 0L;
        /**
         * <code>required sint64 repeat = 2;</code>
         * @return Whether the repeat field is set.
         */
        @java.lang.Override
        public boolean hasRepeat() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required sint64 repeat = 2;</code>
         * @return The repeat.
         */
        @java.lang.Override
        public long getRepeat() {
          return repeat_;
        }
  
        private byte memoizedIsInitialized = -1;
        @java.lang.Override
        public final boolean isInitialized() {
          byte isInitialized = memoizedIsInitialized;
          if (isInitialized == 1) return true;
          if (isInitialized == 0) return false;
  
          if (!hasLocation()) {
            memoizedIsInitialized = 0;
            return false;
          }
          if (!hasRepeat()) {
            memoizedIsInitialized = 0;
            return false;
          }
          memoizedIsInitialized = 1;
          return true;
        }
  
        @java.lang.Override
        public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                            throws java.io.IOException {
          if (((bitField0_ & 0x00000001) != 0)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, location_);
          }
          if (((bitField0_ & 0x00000002) != 0)) {
            output.writeSInt64(2, repeat_);
          }
          getUnknownFields().writeTo(output);
        }
  
        @java.lang.Override
        public int getSerializedSize() {
          int size = memoizedSize;
          if (size != -1) return size;
  
          size = 0;
          if (((bitField0_ & 0x00000001) != 0)) {
            size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, location_);
          }
          if (((bitField0_ & 0x00000002) != 0)) {
            size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeSInt64Size(2, repeat_);
          }
          size += getUnknownFields().getSerializedSize();
          memoizedSize = size;
          return size;
        }
  
        @java.lang.Override
        public boolean equals(final java.lang.Object obj) {
          if (obj == this) {
           return true;
          }
          if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation)) {
            return super.equals(obj);
          }
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation) obj;
  
          if (hasLocation() != other.hasLocation()) return false;
          if (hasLocation()) {
            if (!getLocation()
                .equals(other.getLocation())) return false;
          }
          if (hasRepeat() != other.hasRepeat()) return false;
          if (hasRepeat()) {
            if (getRepeat()
                != other.getRepeat()) return false;
          }
          if (!getUnknownFields().equals(other.getUnknownFields())) return false;
          return true;
        }
  
        @java.lang.Override
        public int hashCode() {
          if (memoizedHashCode != 0) {
            return memoizedHashCode;
          }
          int hash = 41;
          hash = (19 * hash) + getDescriptor().hashCode();
          if (hasLocation()) {
            hash = (37 * hash) + LOCATION_FIELD_NUMBER;
            hash = (53 * hash) + getLocation().hashCode();
          }
          if (hasRepeat()) {
            hash = (37 * hash) + REPEAT_FIELD_NUMBER;
            hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
                getRepeat());
          }
          hash = (29 * hash) + getUnknownFields().hashCode();
          memoizedHashCode = hash;
          return hash;
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            java.nio.ByteBuffer data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            java.nio.ByteBuffer data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(byte[] data)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            byte[] data,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          return PARSER.parseFrom(data, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            java.io.InputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input, extensionRegistry);
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseDelimitedWithIOException(PARSER, input);
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseDelimitedFrom(
            java.io.InputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input);
        }
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation parseFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
              .parseWithIOException(PARSER, input, extensionRegistry);
        }
  
        @java.lang.Override
        public Builder newBuilderForType() { return newBuilder(); }
        public static Builder newBuilder() {
          return DEFAULT_INSTANCE.toBuilder();
        }
        public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          Builder builder = new Builder(parent);
          return builder;
        }
        /**
         * <pre>
         * *
         * Locations where splits lies in.
         *
         * By the managed nature of TableStore, these locations are no more than hints.
         * If a location is not suitable to be seen, an empty string will be placed.
         * </pre>
         *
         * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation}
         */
        public static final class Builder extends
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
            // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation)
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder {
          public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
              getDescriptor() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor;
          }
  
          @java.lang.Override
          protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
              internalGetFieldAccessorTable() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_fieldAccessorTable
                .ensureFieldAccessorsInitialized(
                    com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder.class);
          }
  
          // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.newBuilder()
          private Builder() {
  
          }
  
          private Builder(
              com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
            super(parent);
  
          }
          @java.lang.Override
          public Builder clear() {
            super.clear();
            bitField0_ = 0;
            location_ = "";
            repeat_ = 0L;
            return this;
          }
  
          @java.lang.Override
          public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
              getDescriptorForType() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor;
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getDefaultInstanceForType() {
            return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.getDefaultInstance();
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation build() {
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation result = buildPartial();
            if (!result.isInitialized()) {
              throw newUninitializedMessageException(result);
            }
            return result;
          }
  
          @java.lang.Override
          public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation buildPartial() {
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation(this);
            if (bitField0_ != 0) { buildPartial0(result); }
            onBuilt();
            return result;
          }
  
          private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation result) {
            int from_bitField0_ = bitField0_;
            int to_bitField0_ = 0;
            if (((from_bitField0_ & 0x00000001) != 0)) {
              result.location_ = location_;
              to_bitField0_ |= 0x00000001;
            }
            if (((from_bitField0_ & 0x00000002) != 0)) {
              result.repeat_ = repeat_;
              to_bitField0_ |= 0x00000002;
            }
            result.bitField0_ |= to_bitField0_;
          }
  
          @java.lang.Override
          public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
            if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation) {
              return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation)other);
            } else {
              super.mergeFrom(other);
              return this;
            }
          }
  
          public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation other) {
            if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.getDefaultInstance()) return this;
            if (other.hasLocation()) {
              location_ = other.location_;
              bitField0_ |= 0x00000001;
              onChanged();
            }
            if (other.hasRepeat()) {
              setRepeat(other.getRepeat());
            }
            this.mergeUnknownFields(other.getUnknownFields());
            onChanged();
            return this;
          }
  
          @java.lang.Override
          public final boolean isInitialized() {
            if (!hasLocation()) {
              return false;
            }
            if (!hasRepeat()) {
              return false;
            }
            return true;
          }
  
          @java.lang.Override
          public Builder mergeFrom(
              com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
              com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws java.io.IOException {
            if (extensionRegistry == null) {
              throw new java.lang.NullPointerException();
            }
            try {
              boolean done = false;
              while (!done) {
                int tag = input.readTag();
                switch (tag) {
                  case 0:
                    done = true;
                    break;
                  case 10: {
                    location_ = input.readBytes();
                    bitField0_ |= 0x00000001;
                    break;
                  } // case 10
                  case 16: {
                    repeat_ = input.readSInt64();
                    bitField0_ |= 0x00000002;
                    break;
                  } // case 16
                  default: {
                    if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                      done = true; // was an endgroup tag
                    }
                    break;
                  } // default:
                } // switch (tag)
              } // while (!done)
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.unwrapIOException();
            } finally {
              onChanged();
            } // finally
            return this;
          }
          private int bitField0_;
  
          private java.lang.Object location_ = "";
          /**
           * <code>required string location = 1;</code>
           * @return Whether the location field is set.
           */
          public boolean hasLocation() {
            return ((bitField0_ & 0x00000001) != 0);
          }
          /**
           * <code>required string location = 1;</code>
           * @return The location.
           */
          public java.lang.String getLocation() {
            java.lang.Object ref = location_;
            if (!(ref instanceof java.lang.String)) {
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                  (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
              java.lang.String s = bs.toStringUtf8();
              if (bs.isValidUtf8()) {
                location_ = s;
              }
              return s;
            } else {
              return (java.lang.String) ref;
            }
          }
          /**
           * <code>required string location = 1;</code>
           * @return The bytes for location.
           */
          public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
              getLocationBytes() {
            java.lang.Object ref = location_;
            if (ref instanceof String) {
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                      (java.lang.String) ref);
              location_ = b;
              return b;
            } else {
              return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            }
          }
          /**
           * <code>required string location = 1;</code>
           * @param value The location to set.
           * @return This builder for chaining.
           */
          public Builder setLocation(
              java.lang.String value) {
            if (value == null) { throw new NullPointerException(); }
            location_ = value;
            bitField0_ |= 0x00000001;
            onChanged();
            return this;
          }
          /**
           * <code>required string location = 1;</code>
           * @return This builder for chaining.
           */
          public Builder clearLocation() {
            location_ = getDefaultInstance().getLocation();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
            return this;
          }
          /**
           * <code>required string location = 1;</code>
           * @param value The bytes for location to set.
           * @return This builder for chaining.
           */
          public Builder setLocationBytes(
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
            if (value == null) { throw new NullPointerException(); }
            location_ = value;
            bitField0_ |= 0x00000001;
            onChanged();
            return this;
          }
  
          private long repeat_ ;
          /**
           * <code>required sint64 repeat = 2;</code>
           * @return Whether the repeat field is set.
           */
          @java.lang.Override
          public boolean hasRepeat() {
            return ((bitField0_ & 0x00000002) != 0);
          }
          /**
           * <code>required sint64 repeat = 2;</code>
           * @return The repeat.
           */
          @java.lang.Override
          public long getRepeat() {
            return repeat_;
          }
          /**
           * <code>required sint64 repeat = 2;</code>
           * @param value The repeat to set.
           * @return This builder for chaining.
           */
          public Builder setRepeat(long value) {
  
            repeat_ = value;
            bitField0_ |= 0x00000002;
            onChanged();
            return this;
          }
          /**
           * <code>required sint64 repeat = 2;</code>
           * @return This builder for chaining.
           */
          public Builder clearRepeat() {
            bitField0_ = (bitField0_ & ~0x00000002);
            repeat_ = 0L;
            onChanged();
            return this;
          }
  
          // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation)
        }
  
        // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation)
        private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation DEFAULT_INSTANCE;
        static {
          DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation();
        }
  
        public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }
  
        private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SplitLocation>
            PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SplitLocation>() {
          @java.lang.Override
          public SplitLocation parsePartialFrom(
              com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
              com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
              throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
            Builder builder = newBuilder();
            try {
              builder.mergeFrom(input, extensionRegistry);
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
              throw e.setUnfinishedMessage(builder.buildPartial());
            } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
              throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
            } catch (java.io.IOException e) {
              throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                  .setUnfinishedMessage(builder.buildPartial());
            }
            return builder.buildPartial();
          }
        };
  
        public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SplitLocation> parser() {
          return PARSER;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SplitLocation> getParserForType() {
          return PARSER;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getDefaultInstanceForType() {
          return DEFAULT_INSTANCE;
        }
  
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int SCHEMA_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> schema_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> getSchemaList() {
        return schema_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
          getSchemaOrBuilderList() {
        return schema_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      @java.lang.Override
      public int getSchemaCount() {
        return schema_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getSchema(int index) {
        return schema_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getSchemaOrBuilder(
          int index) {
        return schema_.get(index);
      }
  
      public static final int SPLIT_POINTS_FIELD_NUMBER = 3;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> splitPoints_ =
          emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @return A list containing the splitPoints.
       */
      @java.lang.Override
      public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
          getSplitPointsList() {
        return splitPoints_;
      }
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @return The count of splitPoints.
       */
      public int getSplitPointsCount() {
        return splitPoints_.size();
      }
      /**
       * <pre>
       * *
       * Split points between splits, in the increasing order
       *
       * A split is a consecutive range of primary keys,
       * whose data size is about split_size specified in the request.
       * The size could be hard to be precise.
       *
       * A split point is an array of primary-key column w.r.t. table schema,
       * which is never longer than that of table schema.
       * Tailing -inf will be omitted to reduce transmission payloads.
       * </pre>
       *
       * <code>repeated bytes split_points = 3;</code>
       * @param index The index of the element to return.
       * @return The splitPoints at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSplitPoints(int index) {
        return splitPoints_.get(index);
      }
  
      public static final int LOCATIONS_FIELD_NUMBER = 4;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> locations_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> getLocationsList() {
        return locations_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder> 
          getLocationsOrBuilderList() {
        return locations_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      @java.lang.Override
      public int getLocationsCount() {
        return locations_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getLocations(int index) {
        return locations_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder getLocationsOrBuilder(
          int index) {
        return locations_.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;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getSchemaCount(); i++) {
          if (!getSchema(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        for (int i = 0; i < getLocationsCount(); i++) {
          if (!getLocations(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        for (int i = 0; i < schema_.size(); i++) {
          output.writeMessage(2, schema_.get(i));
        }
        for (int i = 0; i < splitPoints_.size(); i++) {
          output.writeBytes(3, splitPoints_.get(i));
        }
        for (int i = 0; i < locations_.size(); i++) {
          output.writeMessage(4, locations_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        for (int i = 0; i < schema_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, schema_.get(i));
        }
        {
          int dataSize = 0;
          for (int i = 0; i < splitPoints_.size(); i++) {
            dataSize += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(splitPoints_.get(i));
          }
          size += dataSize;
          size += 1 * getSplitPointsList().size();
        }
        for (int i = 0; i < locations_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, locations_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (!getSchemaList()
            .equals(other.getSchemaList())) return false;
        if (!getSplitPointsList()
            .equals(other.getSplitPointsList())) return false;
        if (!getLocationsList()
            .equals(other.getLocationsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (getSchemaCount() > 0) {
          hash = (37 * hash) + SCHEMA_FIELD_NUMBER;
          hash = (53 * hash) + getSchemaList().hashCode();
        }
        if (getSplitPointsCount() > 0) {
          hash = (37 * hash) + SPLIT_POINTS_FIELD_NUMBER;
          hash = (53 * hash) + getSplitPointsList().hashCode();
        }
        if (getLocationsCount() > 0) {
          hash = (37 * hash) + LOCATIONS_FIELD_NUMBER;
          hash = (53 * hash) + getLocationsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
            getSchemaFieldBuilder();
            getLocationsFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          if (schemaBuilder_ == null) {
            schema_ = java.util.Collections.emptyList();
          } else {
            schema_ = null;
            schemaBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          splitPoints_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          if (locationsBuilder_ == null) {
            locations_ = java.util.Collections.emptyList();
          } else {
            locations_ = null;
            locationsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000008);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse result) {
          if (schemaBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              schema_ = java.util.Collections.unmodifiableList(schema_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.schema_ = schema_;
          } else {
            result.schema_ = schemaBuilder_.build();
          }
          if (locationsBuilder_ == null) {
            if (((bitField0_ & 0x00000008) != 0)) {
              locations_ = java.util.Collections.unmodifiableList(locations_);
              bitField0_ = (bitField0_ & ~0x00000008);
            }
            result.locations_ = locations_;
          } else {
            result.locations_ = locationsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            splitPoints_.makeImmutable();
            result.splitPoints_ = splitPoints_;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (schemaBuilder_ == null) {
            if (!other.schema_.isEmpty()) {
              if (schema_.isEmpty()) {
                schema_ = other.schema_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureSchemaIsMutable();
                schema_.addAll(other.schema_);
              }
              onChanged();
            }
          } else {
            if (!other.schema_.isEmpty()) {
              if (schemaBuilder_.isEmpty()) {
                schemaBuilder_.dispose();
                schemaBuilder_ = null;
                schema_ = other.schema_;
                bitField0_ = (bitField0_ & ~0x00000002);
                schemaBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getSchemaFieldBuilder() : null;
              } else {
                schemaBuilder_.addAllMessages(other.schema_);
              }
            }
          }
          if (!other.splitPoints_.isEmpty()) {
            if (splitPoints_.isEmpty()) {
              splitPoints_ = other.splitPoints_;
              splitPoints_.makeImmutable();
              bitField0_ |= 0x00000004;
            } else {
              ensureSplitPointsIsMutable();
              splitPoints_.addAll(other.splitPoints_);
            }
            onChanged();
          }
          if (locationsBuilder_ == null) {
            if (!other.locations_.isEmpty()) {
              if (locations_.isEmpty()) {
                locations_ = other.locations_;
                bitField0_ = (bitField0_ & ~0x00000008);
              } else {
                ensureLocationsIsMutable();
                locations_.addAll(other.locations_);
              }
              onChanged();
            }
          } else {
            if (!other.locations_.isEmpty()) {
              if (locationsBuilder_.isEmpty()) {
                locationsBuilder_.dispose();
                locationsBuilder_ = null;
                locations_ = other.locations_;
                bitField0_ = (bitField0_ & ~0x00000008);
                locationsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getLocationsFieldBuilder() : null;
              } else {
                locationsBuilder_.addAllMessages(other.locations_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          for (int i = 0; i < getSchemaCount(); i++) {
            if (!getSchema(i).isInitialized()) {
              return false;
            }
          }
          for (int i = 0; i < getLocationsCount(); i++) {
            if (!getLocations(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.parser(),
                          extensionRegistry);
                  if (schemaBuilder_ == null) {
                    ensureSchemaIsMutable();
                    schema_.add(m);
                  } else {
                    schemaBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                case 26: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString v = input.readBytes();
                  ensureSplitPointsIsMutable();
                  splitPoints_.add(v);
                  break;
                } // case 26
                case 34: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.parser(),
                          extensionRegistry);
                  if (locationsBuilder_ == null) {
                    ensureLocationsIsMutable();
                    locations_.add(m);
                  } else {
                    locationsBuilder_.addMessage(m);
                  }
                  break;
                } // case 34
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> schema_ =
          java.util.Collections.emptyList();
        private void ensureSchemaIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            schema_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema>(schema_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> schemaBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> getSchemaList() {
          if (schemaBuilder_ == null) {
            return java.util.Collections.unmodifiableList(schema_);
          } else {
            return schemaBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public int getSchemaCount() {
          if (schemaBuilder_ == null) {
            return schema_.size();
          } else {
            return schemaBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema getSchema(int index) {
          if (schemaBuilder_ == null) {
            return schema_.get(index);
          } else {
            return schemaBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder setSchema(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (schemaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureSchemaIsMutable();
            schema_.set(index, value);
            onChanged();
          } else {
            schemaBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder setSchema(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (schemaBuilder_ == null) {
            ensureSchemaIsMutable();
            schema_.set(index, builderForValue.build());
            onChanged();
          } else {
            schemaBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder addSchema(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (schemaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureSchemaIsMutable();
            schema_.add(value);
            onChanged();
          } else {
            schemaBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder addSchema(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema value) {
          if (schemaBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureSchemaIsMutable();
            schema_.add(index, value);
            onChanged();
          } else {
            schemaBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder addSchema(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (schemaBuilder_ == null) {
            ensureSchemaIsMutable();
            schema_.add(builderForValue.build());
            onChanged();
          } else {
            schemaBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder addSchema(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder builderForValue) {
          if (schemaBuilder_ == null) {
            ensureSchemaIsMutable();
            schema_.add(index, builderForValue.build());
            onChanged();
          } else {
            schemaBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder addAllSchema(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema> values) {
          if (schemaBuilder_ == null) {
            ensureSchemaIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, schema_);
            onChanged();
          } else {
            schemaBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder clearSchema() {
          if (schemaBuilder_ == null) {
            schema_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            schemaBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public Builder removeSchema(int index) {
          if (schemaBuilder_ == null) {
            ensureSchemaIsMutable();
            schema_.remove(index);
            onChanged();
          } else {
            schemaBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder getSchemaBuilder(
            int index) {
          return getSchemaFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder getSchemaOrBuilder(
            int index) {
          if (schemaBuilder_ == null) {
            return schema_.get(index);  } else {
            return schemaBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
             getSchemaOrBuilderList() {
          if (schemaBuilder_ != null) {
            return schemaBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(schema_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder addSchemaBuilder() {
          return getSchemaFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder addSchemaBuilder(
            int index) {
          return getSchemaFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.PrimaryKeySchema schema = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder> 
             getSchemaBuilderList() {
          return getSchemaFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder> 
            getSchemaFieldBuilder() {
          if (schemaBuilder_ == null) {
            schemaBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchema.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.PrimaryKeySchemaOrBuilder>(
                    schema_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            schema_ = null;
          }
          return schemaBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.Internal.ProtobufList<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> splitPoints_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
        private void ensureSplitPointsIsMutable() {
          if (!splitPoints_.isModifiable()) {
            splitPoints_ = makeMutableCopy(splitPoints_);
          }
          bitField0_ |= 0x00000004;
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @return A list containing the splitPoints.
         */
        public java.util.List<com.aliyun.ots.thirdparty.com.google.protobuf.ByteString>
            getSplitPointsList() {
          splitPoints_.makeImmutable();
          return splitPoints_;
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @return The count of splitPoints.
         */
        public int getSplitPointsCount() {
          return splitPoints_.size();
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @param index The index of the element to return.
         * @return The splitPoints at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSplitPoints(int index) {
          return splitPoints_.get(index);
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @param index The index to set the value at.
         * @param value The splitPoints to set.
         * @return This builder for chaining.
         */
        public Builder setSplitPoints(
            int index, com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureSplitPointsIsMutable();
          splitPoints_.set(index, value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @param value The splitPoints to add.
         * @return This builder for chaining.
         */
        public Builder addSplitPoints(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureSplitPointsIsMutable();
          splitPoints_.add(value);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @param values The splitPoints to add.
         * @return This builder for chaining.
         */
        public Builder addAllSplitPoints(
            java.lang.Iterable<? extends com.aliyun.ots.thirdparty.com.google.protobuf.ByteString> values) {
          ensureSplitPointsIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, splitPoints_);
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * *
         * Split points between splits, in the increasing order
         *
         * A split is a consecutive range of primary keys,
         * whose data size is about split_size specified in the request.
         * The size could be hard to be precise.
         *
         * A split point is an array of primary-key column w.r.t. table schema,
         * which is never longer than that of table schema.
         * Tailing -inf will be omitted to reduce transmission payloads.
         * </pre>
         *
         * <code>repeated bytes split_points = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearSplitPoints() {
          splitPoints_ = emptyList(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.class);
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> locations_ =
          java.util.Collections.emptyList();
        private void ensureLocationsIsMutable() {
          if (!((bitField0_ & 0x00000008) != 0)) {
            locations_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation>(locations_);
            bitField0_ |= 0x00000008;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder> locationsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> getLocationsList() {
          if (locationsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(locations_);
          } else {
            return locationsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public int getLocationsCount() {
          if (locationsBuilder_ == null) {
            return locations_.size();
          } else {
            return locationsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation getLocations(int index) {
          if (locationsBuilder_ == null) {
            return locations_.get(index);
          } else {
            return locationsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder setLocations(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation value) {
          if (locationsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLocationsIsMutable();
            locations_.set(index, value);
            onChanged();
          } else {
            locationsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder setLocations(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder builderForValue) {
          if (locationsBuilder_ == null) {
            ensureLocationsIsMutable();
            locations_.set(index, builderForValue.build());
            onChanged();
          } else {
            locationsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder addLocations(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation value) {
          if (locationsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLocationsIsMutable();
            locations_.add(value);
            onChanged();
          } else {
            locationsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder addLocations(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation value) {
          if (locationsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLocationsIsMutable();
            locations_.add(index, value);
            onChanged();
          } else {
            locationsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder addLocations(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder builderForValue) {
          if (locationsBuilder_ == null) {
            ensureLocationsIsMutable();
            locations_.add(builderForValue.build());
            onChanged();
          } else {
            locationsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder addLocations(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder builderForValue) {
          if (locationsBuilder_ == null) {
            ensureLocationsIsMutable();
            locations_.add(index, builderForValue.build());
            onChanged();
          } else {
            locationsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder addAllLocations(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation> values) {
          if (locationsBuilder_ == null) {
            ensureLocationsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, locations_);
            onChanged();
          } else {
            locationsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder clearLocations() {
          if (locationsBuilder_ == null) {
            locations_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000008);
            onChanged();
          } else {
            locationsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public Builder removeLocations(int index) {
          if (locationsBuilder_ == null) {
            ensureLocationsIsMutable();
            locations_.remove(index);
            onChanged();
          } else {
            locationsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder getLocationsBuilder(
            int index) {
          return getLocationsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder getLocationsOrBuilder(
            int index) {
          if (locationsBuilder_ == null) {
            return locations_.get(index);  } else {
            return locationsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder> 
             getLocationsOrBuilderList() {
          if (locationsBuilder_ != null) {
            return locationsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(locations_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder addLocationsBuilder() {
          return getLocationsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder addLocationsBuilder(
            int index) {
          return getLocationsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse.SplitLocation locations = 4;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder> 
             getLocationsBuilderList() {
          return getLocationsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder> 
            getLocationsFieldBuilder() {
          if (locationsBuilder_ == null) {
            locationsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocation.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse.SplitLocationOrBuilder>(
                    locations_,
                    ((bitField0_ & 0x00000008) != 0),
                    getParentForChildren(),
                    isClean());
            locations_ = null;
          }
          return locationsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitPointsBySizeResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ComputeSplitPointsBySizeResponse>() {
        @java.lang.Override
        public ComputeSplitPointsBySizeResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitPointsBySizeResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitPointsBySizeResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BulkExportRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @return A list containing the columnsToGet.
       */
      java.util.List<java.lang.String>
          getColumnsToGetList();
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @return The count of columnsToGet.
       */
      int getColumnsToGetCount();
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      java.lang.String getColumnsToGet(int index);
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index);
  
      /**
       * <code>required bytes inclusive_start_primary_key = 3;</code>
       * @return Whether the inclusiveStartPrimaryKey field is set.
       */
      boolean hasInclusiveStartPrimaryKey();
      /**
       * <code>required bytes inclusive_start_primary_key = 3;</code>
       * @return The inclusiveStartPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey();
  
      /**
       * <code>required bytes exclusive_end_primary_key = 4;</code>
       * @return Whether the exclusiveEndPrimaryKey field is set.
       */
      boolean hasExclusiveEndPrimaryKey();
      /**
       * <code>required bytes exclusive_end_primary_key = 4;</code>
       * @return The exclusiveEndPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey();
  
      /**
       * <code>optional bytes filter = 5;</code>
       * @return Whether the filter field is set.
       */
      boolean hasFilter();
      /**
       * <code>optional bytes filter = 5;</code>
       * @return The filter.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
       * @return Whether the dataBlockTypeHint field is set.
       */
      boolean hasDataBlockTypeHint();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
       * @return The dataBlockTypeHint.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockTypeHint();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest}
     */
    public static final class BulkExportRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest)
        BulkExportRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BulkExportRequest.class.getName());
      }
      // Use BulkExportRequest.newBuilder() to construct.
      private BulkExportRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BulkExportRequest() {
        tableName_ = "";
        columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        dataBlockTypeHint_ = 1;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int COLUMNS_TO_GET_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
          com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @return A list containing the columnsToGet.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
          getColumnsToGetList() {
        return columnsToGet_;
      }
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @return The count of columnsToGet.
       */
      public int getColumnsToGetCount() {
        return columnsToGet_.size();
      }
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @param index The index of the element to return.
       * @return The columnsToGet at the given index.
       */
      public java.lang.String getColumnsToGet(int index) {
        return columnsToGet_.get(index);
      }
      /**
       * <code>repeated string columns_to_get = 2;</code>
       * @param index The index of the value to return.
       * @return The bytes of the columnsToGet at the given index.
       */
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getColumnsToGetBytes(int index) {
        return columnsToGet_.getByteString(index);
      }
  
      public static final int INCLUSIVE_START_PRIMARY_KEY_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes inclusive_start_primary_key = 3;</code>
       * @return Whether the inclusiveStartPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasInclusiveStartPrimaryKey() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes inclusive_start_primary_key = 3;</code>
       * @return The inclusiveStartPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey() {
        return inclusiveStartPrimaryKey_;
      }
  
      public static final int EXCLUSIVE_END_PRIMARY_KEY_FIELD_NUMBER = 4;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes exclusive_end_primary_key = 4;</code>
       * @return Whether the exclusiveEndPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasExclusiveEndPrimaryKey() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required bytes exclusive_end_primary_key = 4;</code>
       * @return The exclusiveEndPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey() {
        return exclusiveEndPrimaryKey_;
      }
  
      public static final int FILTER_FIELD_NUMBER = 5;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes filter = 5;</code>
       * @return Whether the filter field is set.
       */
      @java.lang.Override
      public boolean hasFilter() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes filter = 5;</code>
       * @return The filter.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
        return filter_;
      }
  
      public static final int DATA_BLOCK_TYPE_HINT_FIELD_NUMBER = 6;
      private int dataBlockTypeHint_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
       * @return Whether the dataBlockTypeHint field is set.
       */
      @java.lang.Override public boolean hasDataBlockTypeHint() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
       * @return The dataBlockTypeHint.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockTypeHint() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(dataBlockTypeHint_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.DBT_SIMPLE_ROW_MATRIX : 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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasInclusiveStartPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasExclusiveEndPrimaryKey()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < columnsToGet_.size(); i++) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 2, columnsToGet_.getRaw(i));
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(3, inclusiveStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(4, exclusiveEndPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeBytes(5, filter_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          output.writeEnum(6, dataBlockTypeHint_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < columnsToGet_.size(); i++) {
            dataSize += computeStringSizeNoTag(columnsToGet_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getColumnsToGetList().size();
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, inclusiveStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, exclusiveEndPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, filter_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(6, dataBlockTypeHint_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getColumnsToGetList()
            .equals(other.getColumnsToGetList())) return false;
        if (hasInclusiveStartPrimaryKey() != other.hasInclusiveStartPrimaryKey()) return false;
        if (hasInclusiveStartPrimaryKey()) {
          if (!getInclusiveStartPrimaryKey()
              .equals(other.getInclusiveStartPrimaryKey())) return false;
        }
        if (hasExclusiveEndPrimaryKey() != other.hasExclusiveEndPrimaryKey()) return false;
        if (hasExclusiveEndPrimaryKey()) {
          if (!getExclusiveEndPrimaryKey()
              .equals(other.getExclusiveEndPrimaryKey())) return false;
        }
        if (hasFilter() != other.hasFilter()) return false;
        if (hasFilter()) {
          if (!getFilter()
              .equals(other.getFilter())) return false;
        }
        if (hasDataBlockTypeHint() != other.hasDataBlockTypeHint()) return false;
        if (hasDataBlockTypeHint()) {
          if (dataBlockTypeHint_ != other.dataBlockTypeHint_) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getColumnsToGetCount() > 0) {
          hash = (37 * hash) + COLUMNS_TO_GET_FIELD_NUMBER;
          hash = (53 * hash) + getColumnsToGetList().hashCode();
        }
        if (hasInclusiveStartPrimaryKey()) {
          hash = (37 * hash) + INCLUSIVE_START_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getInclusiveStartPrimaryKey().hashCode();
        }
        if (hasExclusiveEndPrimaryKey()) {
          hash = (37 * hash) + EXCLUSIVE_END_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getExclusiveEndPrimaryKey().hashCode();
        }
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        if (hasDataBlockTypeHint()) {
          hash = (37 * hash) + DATA_BLOCK_TYPE_HINT_FIELD_NUMBER;
          hash = (53 * hash) + dataBlockTypeHint_;
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          columnsToGet_ =
              com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          dataBlockTypeHint_ = 1;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            columnsToGet_.makeImmutable();
            result.columnsToGet_ = columnsToGet_;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.inclusiveStartPrimaryKey_ = inclusiveStartPrimaryKey_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.exclusiveEndPrimaryKey_ = exclusiveEndPrimaryKey_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.filter_ = filter_;
            to_bitField0_ |= 0x00000008;
          }
          if (((from_bitField0_ & 0x00000020) != 0)) {
            result.dataBlockTypeHint_ = dataBlockTypeHint_;
            to_bitField0_ |= 0x00000010;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (!other.columnsToGet_.isEmpty()) {
            if (columnsToGet_.isEmpty()) {
              columnsToGet_ = other.columnsToGet_;
              bitField0_ |= 0x00000002;
            } else {
              ensureColumnsToGetIsMutable();
              columnsToGet_.addAll(other.columnsToGet_);
            }
            onChanged();
          }
          if (other.hasInclusiveStartPrimaryKey()) {
            setInclusiveStartPrimaryKey(other.getInclusiveStartPrimaryKey());
          }
          if (other.hasExclusiveEndPrimaryKey()) {
            setExclusiveEndPrimaryKey(other.getExclusiveEndPrimaryKey());
          }
          if (other.hasFilter()) {
            setFilter(other.getFilter());
          }
          if (other.hasDataBlockTypeHint()) {
            setDataBlockTypeHint(other.getDataBlockTypeHint());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          if (!hasInclusiveStartPrimaryKey()) {
            return false;
          }
          if (!hasExclusiveEndPrimaryKey()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = input.readBytes();
                  ensureColumnsToGetIsMutable();
                  columnsToGet_.add(bs);
                  break;
                } // case 18
                case 26: {
                  inclusiveStartPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 34: {
                  exclusiveEndPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 34
                case 42: {
                  filter_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 42
                case 48: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(6, tmpRaw);
                  } else {
                    dataBlockTypeHint_ = tmpRaw;
                    bitField0_ |= 0x00000020;
                  }
                  break;
                } // case 48
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
        private void ensureColumnsToGetIsMutable() {
          if (!columnsToGet_.isModifiable()) {
            columnsToGet_ = new com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList(columnsToGet_);
          }
          bitField0_ |= 0x00000002;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @return A list containing the columnsToGet.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ProtocolStringList
            getColumnsToGetList() {
          columnsToGet_.makeImmutable();
          return columnsToGet_;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @return The count of columnsToGet.
         */
        public int getColumnsToGetCount() {
          return columnsToGet_.size();
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param index The index of the element to return.
         * @return The columnsToGet at the given index.
         */
        public java.lang.String getColumnsToGet(int index) {
          return columnsToGet_.get(index);
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param index The index of the value to return.
         * @return The bytes of the columnsToGet at the given index.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getColumnsToGetBytes(int index) {
          return columnsToGet_.getByteString(index);
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param index The index to set the value at.
         * @param value The columnsToGet to set.
         * @return This builder for chaining.
         */
        public Builder setColumnsToGet(
            int index, java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.set(index, value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param value The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGet(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param values The columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addAllColumnsToGet(
            java.lang.Iterable<java.lang.String> values) {
          ensureColumnsToGetIsMutable();
          com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, columnsToGet_);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearColumnsToGet() {
          columnsToGet_ =
            com.aliyun.ots.thirdparty.com.google.protobuf.LazyStringArrayList.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);;
          onChanged();
          return this;
        }
        /**
         * <code>repeated string columns_to_get = 2;</code>
         * @param value The bytes of the columnsToGet to add.
         * @return This builder for chaining.
         */
        public Builder addColumnsToGetBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          ensureColumnsToGetIsMutable();
          columnsToGet_.add(value);
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString inclusiveStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes inclusive_start_primary_key = 3;</code>
         * @return Whether the inclusiveStartPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasInclusiveStartPrimaryKey() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 3;</code>
         * @return The inclusiveStartPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getInclusiveStartPrimaryKey() {
          return inclusiveStartPrimaryKey_;
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 3;</code>
         * @param value The inclusiveStartPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setInclusiveStartPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          inclusiveStartPrimaryKey_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes inclusive_start_primary_key = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearInclusiveStartPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000004);
          inclusiveStartPrimaryKey_ = getDefaultInstance().getInclusiveStartPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString exclusiveEndPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes exclusive_end_primary_key = 4;</code>
         * @return Whether the exclusiveEndPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasExclusiveEndPrimaryKey() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 4;</code>
         * @return The exclusiveEndPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getExclusiveEndPrimaryKey() {
          return exclusiveEndPrimaryKey_;
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 4;</code>
         * @param value The exclusiveEndPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setExclusiveEndPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          exclusiveEndPrimaryKey_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes exclusive_end_primary_key = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearExclusiveEndPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000008);
          exclusiveEndPrimaryKey_ = getDefaultInstance().getExclusiveEndPrimaryKey();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString filter_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes filter = 5;</code>
         * @return Whether the filter field is set.
         */
        @java.lang.Override
        public boolean hasFilter() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional bytes filter = 5;</code>
         * @return The filter.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getFilter() {
          return filter_;
        }
        /**
         * <code>optional bytes filter = 5;</code>
         * @param value The filter to set.
         * @return This builder for chaining.
         */
        public Builder setFilter(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          filter_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes filter = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearFilter() {
          bitField0_ = (bitField0_ & ~0x00000010);
          filter_ = getDefaultInstance().getFilter();
          onChanged();
          return this;
        }
  
        private int dataBlockTypeHint_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
         * @return Whether the dataBlockTypeHint field is set.
         */
        @java.lang.Override public boolean hasDataBlockTypeHint() {
          return ((bitField0_ & 0x00000020) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
         * @return The dataBlockTypeHint.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockTypeHint() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(dataBlockTypeHint_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.DBT_SIMPLE_ROW_MATRIX : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
         * @param value The dataBlockTypeHint to set.
         * @return This builder for chaining.
         */
        public Builder setDataBlockTypeHint(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000020;
          dataBlockTypeHint_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type_hint = 6 [default = DBT_SIMPLE_ROW_MATRIX];</code>
         * @return This builder for chaining.
         */
        public Builder clearDataBlockTypeHint() {
          bitField0_ = (bitField0_ & ~0x00000020);
          dataBlockTypeHint_ = 1;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BulkExportRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BulkExportRequest>() {
        @java.lang.Override
        public BulkExportRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BulkExportResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>required bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      boolean hasRows();
      /**
       * <code>required bytes rows = 2;</code>
       * @return The rows.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows();
  
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return Whether the nextStartPrimaryKey field is set.
       */
      boolean hasNextStartPrimaryKey();
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return The nextStartPrimaryKey.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
       * @return Whether the dataBlockType field is set.
       */
      boolean hasDataBlockType();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
       * @return The dataBlockType.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockType();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse}
     */
    public static final class BulkExportResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse)
        BulkExportResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BulkExportResponse.class.getName());
      }
      // Use BulkExportResponse.newBuilder() to construct.
      private BulkExportResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BulkExportResponse() {
        rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        dataBlockType_ = 0;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMED_FIELD_NUMBER = 1;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      @java.lang.Override
      public boolean hasRows() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes rows = 2;</code>
       * @return The rows.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
        return rows_;
      }
  
      public static final int NEXT_START_PRIMARY_KEY_FIELD_NUMBER = 3;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return Whether the nextStartPrimaryKey field is set.
       */
      @java.lang.Override
      public boolean hasNextStartPrimaryKey() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes next_start_primary_key = 3;</code>
       * @return The nextStartPrimaryKey.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey() {
        return nextStartPrimaryKey_;
      }
  
      public static final int DATA_BLOCK_TYPE_FIELD_NUMBER = 4;
      private int dataBlockType_ = 0;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
       * @return Whether the dataBlockType field is set.
       */
      @java.lang.Override public boolean hasDataBlockType() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
       * @return The dataBlockType.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(dataBlockType_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.DBT_PLAIN_BUFFER : 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;
  
        if (!hasConsumed()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRows()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!getConsumed().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeMessage(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, rows_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeBytes(3, nextStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          output.writeEnum(4, dataBlockType_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getConsumed());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rows_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, nextStartPrimaryKey_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(4, dataBlockType_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse) obj;
  
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasRows() != other.hasRows()) return false;
        if (hasRows()) {
          if (!getRows()
              .equals(other.getRows())) return false;
        }
        if (hasNextStartPrimaryKey() != other.hasNextStartPrimaryKey()) return false;
        if (hasNextStartPrimaryKey()) {
          if (!getNextStartPrimaryKey()
              .equals(other.getNextStartPrimaryKey())) return false;
        }
        if (hasDataBlockType() != other.hasDataBlockType()) return false;
        if (hasDataBlockType()) {
          if (dataBlockType_ != other.dataBlockType_) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasRows()) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRows().hashCode();
        }
        if (hasNextStartPrimaryKey()) {
          hash = (37 * hash) + NEXT_START_PRIMARY_KEY_FIELD_NUMBER;
          hash = (53 * hash) + getNextStartPrimaryKey().hashCode();
        }
        if (hasDataBlockType()) {
          hash = (37 * hash) + DATA_BLOCK_TYPE_FIELD_NUMBER;
          hash = (53 * hash) + dataBlockType_;
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          dataBlockType_ = 0;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rows_ = rows_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.nextStartPrimaryKey_ = nextStartPrimaryKey_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.dataBlockType_ = dataBlockType_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse.getDefaultInstance()) return this;
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasRows()) {
            setRows(other.getRows());
          }
          if (other.hasNextStartPrimaryKey()) {
            setNextStartPrimaryKey(other.getNextStartPrimaryKey());
          }
          if (other.hasDataBlockType()) {
            setDataBlockType(other.getDataBlockType());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasConsumed()) {
            return false;
          }
          if (!hasRows()) {
            return false;
          }
          if (!getConsumed().isInitialized()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  rows_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  nextStartPrimaryKey_ = input.readBytes();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                case 32: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(4, tmpRaw);
                  } else {
                    dataBlockType_ = tmpRaw;
                    bitField0_ |= 0x00000008;
                  }
                  break;
                } // case 32
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000001;
            onChanged();
          }
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000001);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000001;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 1;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes rows = 2;</code>
         * @return Whether the rows field is set.
         */
        @java.lang.Override
        public boolean hasRows() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @return The rows.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
          return rows_;
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @param value The rows to set.
         * @return This builder for chaining.
         */
        public Builder setRows(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rows_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes rows = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRows() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rows_ = getDefaultInstance().getRows();
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString nextStartPrimaryKey_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return Whether the nextStartPrimaryKey field is set.
         */
        @java.lang.Override
        public boolean hasNextStartPrimaryKey() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return The nextStartPrimaryKey.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getNextStartPrimaryKey() {
          return nextStartPrimaryKey_;
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @param value The nextStartPrimaryKey to set.
         * @return This builder for chaining.
         */
        public Builder setNextStartPrimaryKey(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextStartPrimaryKey_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes next_start_primary_key = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextStartPrimaryKey() {
          bitField0_ = (bitField0_ & ~0x00000004);
          nextStartPrimaryKey_ = getDefaultInstance().getNextStartPrimaryKey();
          onChanged();
          return this;
        }
  
        private int dataBlockType_ = 0;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
         * @return Whether the dataBlockType field is set.
         */
        @java.lang.Override public boolean hasDataBlockType() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
         * @return The dataBlockType.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType getDataBlockType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.forNumber(dataBlockType_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType.DBT_PLAIN_BUFFER : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
         * @param value The dataBlockType to set.
         * @return This builder for chaining.
         */
        public Builder setDataBlockType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.DataBlockType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000008;
          dataBlockType_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.DataBlockType data_block_type = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearDataBlockType() {
          bitField0_ = (bitField0_ & ~0x00000008);
          dataBlockType_ = 0;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BulkExportResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BulkExportResponse>() {
        @java.lang.Override
        public BulkExportResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkExportResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkExportResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BulkImportRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> 
          getRowsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getRows(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      int getRowsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder> 
          getRowsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder getRowsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest}
     */
    public static final class BulkImportRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest)
        BulkImportRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BulkImportRequest.class.getName());
      }
      // Use BulkImportRequest.newBuilder() to construct.
      private BulkImportRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BulkImportRequest() {
        tableName_ = "";
        rows_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> rows_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> getRowsList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder> 
          getRowsOrBuilderList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      @java.lang.Override
      public int getRowsCount() {
        return rows_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getRows(int index) {
        return rows_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder getRowsOrBuilder(
          int index) {
        return rows_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getRowsCount(); i++) {
          if (!getRows(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          output.writeMessage(2, rows_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, rows_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getRowsList()
            .equals(other.getRowsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getRowsCount() > 0) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRowsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
          } else {
            rows_ = null;
            rowsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest result) {
          if (rowsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              rows_ = java.util.Collections.unmodifiableList(rows_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.rows_ = rows_;
          } else {
            result.rows_ = rowsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (rowsBuilder_ == null) {
            if (!other.rows_.isEmpty()) {
              if (rows_.isEmpty()) {
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureRowsIsMutable();
                rows_.addAll(other.rows_);
              }
              onChanged();
            }
          } else {
            if (!other.rows_.isEmpty()) {
              if (rowsBuilder_.isEmpty()) {
                rowsBuilder_.dispose();
                rowsBuilder_ = null;
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
                rowsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getRowsFieldBuilder() : null;
              } else {
                rowsBuilder_.addAllMessages(other.rows_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getRowsCount(); i++) {
            if (!getRows(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.parser(),
                          extensionRegistry);
                  if (rowsBuilder_ == null) {
                    ensureRowsIsMutable();
                    rows_.add(m);
                  } else {
                    rowsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> rows_ =
          java.util.Collections.emptyList();
        private void ensureRowsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            rows_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest>(rows_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder> rowsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> getRowsList() {
          if (rowsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(rows_);
          } else {
            return rowsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public int getRowsCount() {
          if (rowsBuilder_ == null) {
            return rows_.size();
          } else {
            return rowsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getRows(int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);
          } else {
            return rowsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.set(index, value);
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.set(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder addRows(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(index, value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder addRows(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder addAllRows(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest> values) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, rows_);
            onChanged();
          } else {
            rowsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder clearRows() {
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            rowsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public Builder removeRows(int index) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.remove(index);
            onChanged();
          } else {
            rowsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder getRowsBuilder(
            int index) {
          return getRowsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder getRowsOrBuilder(
            int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);  } else {
            return rowsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder> 
             getRowsOrBuilderList() {
          if (rowsBuilder_ != null) {
            return rowsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(rows_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder addRowsBuilder() {
          return getRowsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder addRowsBuilder(
            int index) {
          return getRowsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder> 
             getRowsBuilderList() {
          return getRowsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder> 
            getRowsFieldBuilder() {
          if (rowsBuilder_ == null) {
            rowsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder>(
                    rows_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            rows_ = null;
          }
          return rowsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BulkImportRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BulkImportRequest>() {
        @java.lang.Override
        public BulkImportRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface RowInBulkImportRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return Whether the type field is set.
       */
      boolean hasType();
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return The type.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType();
  
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      boolean hasRowChange();
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest}
     */
    public static final class RowInBulkImportRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest)
        RowInBulkImportRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowInBulkImportRequest.class.getName());
      }
      // Use RowInBulkImportRequest.newBuilder() to construct.
      private RowInBulkImportRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private RowInBulkImportRequest() {
        type_ = 1;
        rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TYPE_FIELD_NUMBER = 1;
      private int type_ = 1;
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return Whether the type field is set.
       */
      @java.lang.Override public boolean hasType() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
       * @return The type.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(type_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.PUT : result;
      }
  
      public static final int ROW_CHANGE_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes row_change = 2;</code>
       * @return Whether the rowChange field is set.
       */
      @java.lang.Override
      public boolean hasRowChange() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>required bytes row_change = 2;</code>
       * @return The rowChange.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
        return rowChange_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasType()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasRowChange()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeEnum(1, type_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeBytes(2, rowChange_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, type_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rowChange_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest) obj;
  
        if (hasType() != other.hasType()) return false;
        if (hasType()) {
          if (type_ != other.type_) return false;
        }
        if (hasRowChange() != other.hasRowChange()) return false;
        if (hasRowChange()) {
          if (!getRowChange()
              .equals(other.getRowChange())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasType()) {
          hash = (37 * hash) + TYPE_FIELD_NUMBER;
          hash = (53 * hash) + type_;
        }
        if (hasRowChange()) {
          hash = (37 * hash) + ROW_CHANGE_FIELD_NUMBER;
          hash = (53 * hash) + getRowChange().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          type_ = 1;
          rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.type_ = type_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rowChange_ = rowChange_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest.getDefaultInstance()) return this;
          if (other.hasType()) {
            setType(other.getType());
          }
          if (other.hasRowChange()) {
            setRowChange(other.getRowChange());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasType()) {
            return false;
          }
          if (!hasRowChange()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(1, tmpRaw);
                  } else {
                    type_ = tmpRaw;
                    bitField0_ |= 0x00000001;
                  }
                  break;
                } // case 8
                case 18: {
                  rowChange_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private int type_ = 1;
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return Whether the type field is set.
         */
        @java.lang.Override public boolean hasType() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return The type.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType getType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.forNumber(type_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType.PUT : result;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @param value The type to set.
         * @return This builder for chaining.
         */
        public Builder setType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.OperationType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          type_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>required .com.alicloud.openservices.tablestore.core.protocol.OperationType type = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000001);
          type_ = 1;
          onChanged();
          return this;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rowChange_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes row_change = 2;</code>
         * @return Whether the rowChange field is set.
         */
        @java.lang.Override
        public boolean hasRowChange() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return The rowChange.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRowChange() {
          return rowChange_;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @param value The rowChange to set.
         * @return This builder for chaining.
         */
        public Builder setRowChange(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rowChange_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes row_change = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRowChange() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rowChange_ = getDefaultInstance().getRowChange();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<RowInBulkImportRequest>() {
        @java.lang.Override
        public RowInBulkImportRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface BulkImportResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> 
          getRowsList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getRows(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      int getRowsCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder> 
          getRowsOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder getRowsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse}
     */
    public static final class BulkImportResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse)
        BulkImportResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          BulkImportResponse.class.getName());
      }
      // Use BulkImportResponse.newBuilder() to construct.
      private BulkImportResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private BulkImportResponse() {
        tableName_ = "";
        rows_ = java.util.Collections.emptyList();
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>required string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> rows_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> getRowsList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder> 
          getRowsOrBuilderList() {
        return rows_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      @java.lang.Override
      public int getRowsCount() {
        return rows_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getRows(int index) {
        return rows_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder getRowsOrBuilder(
          int index) {
        return rows_.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;
  
        if (!hasTableName()) {
          memoizedIsInitialized = 0;
          return false;
        }
        for (int i = 0; i < getRowsCount(); i++) {
          if (!getRows(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          output.writeMessage(2, rows_.get(i));
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        for (int i = 0; i < rows_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, rows_.get(i));
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (!getRowsList()
            .equals(other.getRowsList())) return false;
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (getRowsCount() > 0) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRowsList().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
          } else {
            rows_ = null;
            rowsBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse result) {
          if (rowsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0)) {
              rows_ = java.util.Collections.unmodifiableList(rows_);
              bitField0_ = (bitField0_ & ~0x00000002);
            }
            result.rows_ = rows_;
          } else {
            result.rows_ = rowsBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (rowsBuilder_ == null) {
            if (!other.rows_.isEmpty()) {
              if (rows_.isEmpty()) {
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
              } else {
                ensureRowsIsMutable();
                rows_.addAll(other.rows_);
              }
              onChanged();
            }
          } else {
            if (!other.rows_.isEmpty()) {
              if (rowsBuilder_.isEmpty()) {
                rowsBuilder_.dispose();
                rowsBuilder_ = null;
                rows_ = other.rows_;
                bitField0_ = (bitField0_ & ~0x00000002);
                rowsBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getRowsFieldBuilder() : null;
              } else {
                rowsBuilder_.addAllMessages(other.rows_);
              }
            }
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasTableName()) {
            return false;
          }
          for (int i = 0; i < getRowsCount(); i++) {
            if (!getRows(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.parser(),
                          extensionRegistry);
                  if (rowsBuilder_ == null) {
                    ensureRowsIsMutable();
                    rows_.add(m);
                  } else {
                    rowsBuilder_.addMessage(m);
                  }
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>required string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> rows_ =
          java.util.Collections.emptyList();
        private void ensureRowsIsMutable() {
          if (!((bitField0_ & 0x00000002) != 0)) {
            rows_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse>(rows_);
            bitField0_ |= 0x00000002;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder> rowsBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> getRowsList() {
          if (rowsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(rows_);
          } else {
            return rowsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public int getRowsCount() {
          if (rowsBuilder_ == null) {
            return rows_.size();
          } else {
            return rowsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getRows(int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);
          } else {
            return rowsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.set(index, value);
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder setRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.set(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder addRows(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse value) {
          if (rowsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureRowsIsMutable();
            rows_.add(index, value);
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder addRows(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder addRows(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder builderForValue) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.add(index, builderForValue.build());
            onChanged();
          } else {
            rowsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder addAllRows(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse> values) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, rows_);
            onChanged();
          } else {
            rowsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder clearRows() {
          if (rowsBuilder_ == null) {
            rows_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000002);
            onChanged();
          } else {
            rowsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public Builder removeRows(int index) {
          if (rowsBuilder_ == null) {
            ensureRowsIsMutable();
            rows_.remove(index);
            onChanged();
          } else {
            rowsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder getRowsBuilder(
            int index) {
          return getRowsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder getRowsOrBuilder(
            int index) {
          if (rowsBuilder_ == null) {
            return rows_.get(index);  } else {
            return rowsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder> 
             getRowsOrBuilderList() {
          if (rowsBuilder_ != null) {
            return rowsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(rows_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder addRowsBuilder() {
          return getRowsFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder addRowsBuilder(
            int index) {
          return getRowsFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse rows = 2;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder> 
             getRowsBuilderList() {
          return getRowsFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder> 
            getRowsFieldBuilder() {
          if (rowsBuilder_ == null) {
            rowsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder>(
                    rows_,
                    ((bitField0_ & 0x00000002) != 0),
                    getParentForChildren(),
                    isClean());
            rows_ = null;
          }
          return rowsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.BulkImportResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<BulkImportResponse>() {
        @java.lang.Override
        public BulkImportResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<BulkImportResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.BulkImportResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface RowInBulkImportResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      boolean hasIsOk();
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      boolean getIsOk();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      boolean hasError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse}
     */
    public static final class RowInBulkImportResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse)
        RowInBulkImportResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          RowInBulkImportResponse.class.getName());
      }
      // Use RowInBulkImportResponse.newBuilder() to construct.
      private RowInBulkImportResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private RowInBulkImportResponse() {
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int IS_OK_FIELD_NUMBER = 1;
      private boolean isOk_ = false;
      /**
       * <code>required bool is_ok = 1;</code>
       * @return Whether the isOk field is set.
       */
      @java.lang.Override
      public boolean hasIsOk() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required bool is_ok = 1;</code>
       * @return The isOk.
       */
      @java.lang.Override
      public boolean getIsOk() {
        return isOk_;
      }
  
      public static final int ERROR_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return Whether the error field is set.
       */
      @java.lang.Override
      public boolean hasError() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       * @return The error.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
        return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
      }
  
      public static final int CONSUMED_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (!hasIsOk()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (hasError()) {
          if (!getError().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasConsumed()) {
          if (!getConsumed().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBool(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getConsumed());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, isOk_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getError());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getConsumed());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse) obj;
  
        if (hasIsOk() != other.hasIsOk()) return false;
        if (hasIsOk()) {
          if (getIsOk()
              != other.getIsOk()) return false;
        }
        if (hasError() != other.hasError()) return false;
        if (hasError()) {
          if (!getError()
              .equals(other.getError())) return false;
        }
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasIsOk()) {
          hash = (37 * hash) + IS_OK_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashBoolean(
              getIsOk());
        }
        if (hasError()) {
          hash = (37 * hash) + ERROR_FIELD_NUMBER;
          hash = (53 * hash) + getError().hashCode();
        }
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getErrorFieldBuilder();
            getConsumedFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          isOk_ = false;
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.isOk_ = isOk_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.error_ = errorBuilder_ == null
                ? error_
                : errorBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse.getDefaultInstance()) return this;
          if (other.hasIsOk()) {
            setIsOk(other.getIsOk());
          }
          if (other.hasError()) {
            mergeError(other.getError());
          }
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasIsOk()) {
            return false;
          }
          if (hasError()) {
            if (!getError().isInitialized()) {
              return false;
            }
          }
          if (hasConsumed()) {
            if (!getConsumed().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 8: {
                  isOk_ = input.readBool();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 8
                case 18: {
                  input.readMessage(
                      getErrorFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private boolean isOk_ ;
        /**
         * <code>required bool is_ok = 1;</code>
         * @return Whether the isOk field is set.
         */
        @java.lang.Override
        public boolean hasIsOk() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return The isOk.
         */
        @java.lang.Override
        public boolean getIsOk() {
          return isOk_;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @param value The isOk to set.
         * @return This builder for chaining.
         */
        public Builder setIsOk(boolean value) {
  
          isOk_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required bool is_ok = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearIsOk() {
          bitField0_ = (bitField0_ & ~0x00000001);
          isOk_ = false;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error error_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> errorBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return Whether the error field is set.
         */
        public boolean hasError() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         * @return The error.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error getError() {
          if (errorBuilder_ == null) {
            return error_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          } else {
            return errorBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            error_ = value;
          } else {
            errorBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder setError(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder builderForValue) {
          if (errorBuilder_ == null) {
            error_ = builderForValue.build();
          } else {
            errorBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder mergeError(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error value) {
          if (errorBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              error_ != null &&
              error_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance()) {
              getErrorBuilder().mergeFrom(value);
            } else {
              error_ = value;
            }
          } else {
            errorBuilder_.mergeFrom(value);
          }
          if (error_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public Builder clearError() {
          bitField0_ = (bitField0_ & ~0x00000002);
          error_ = null;
          if (errorBuilder_ != null) {
            errorBuilder_.dispose();
            errorBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder getErrorBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getErrorFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder getErrorOrBuilder() {
          if (errorBuilder_ != null) {
            return errorBuilder_.getMessageOrBuilder();
          } else {
            return error_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.getDefaultInstance() : error_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.Error error = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder> 
            getErrorFieldBuilder() {
          if (errorBuilder_ == null) {
            errorBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.Error.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ErrorOrBuilder>(
                    getError(),
                    getParentForChildren(),
                    isClean());
            error_ = null;
          }
          return errorBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000004);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.RowInBulkImportResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<RowInBulkImportResponse>() {
        @java.lang.Override
        public RowInBulkImportResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<RowInBulkImportResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.RowInBulkImportResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ComputeSplitsRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       * @return Whether the searchIndexSplitsOptions field is set.
       */
      boolean hasSearchIndexSplitsOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       * @return The searchIndexSplitsOptions.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getSearchIndexSplitsOptions();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder getSearchIndexSplitsOptionsOrBuilder();
    }
    /**
     * <pre>
     * computeSplits 
     * </pre>
     *
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest}
     */
    public static final class ComputeSplitsRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest)
        ComputeSplitsRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ComputeSplitsRequest.class.getName());
      }
      // Use ComputeSplitsRequest.newBuilder() to construct.
      private ComputeSplitsRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ComputeSplitsRequest() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int SEARCH_INDEX_SPLITS_OPTIONS_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions searchIndexSplitsOptions_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       * @return Whether the searchIndexSplitsOptions field is set.
       */
      @java.lang.Override
      public boolean hasSearchIndexSplitsOptions() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       * @return The searchIndexSplitsOptions.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getSearchIndexSplitsOptions() {
        return searchIndexSplitsOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance() : searchIndexSplitsOptions_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder getSearchIndexSplitsOptionsOrBuilder() {
        return searchIndexSplitsOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance() : searchIndexSplitsOptions_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getSearchIndexSplitsOptions());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getSearchIndexSplitsOptions());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasSearchIndexSplitsOptions() != other.hasSearchIndexSplitsOptions()) return false;
        if (hasSearchIndexSplitsOptions()) {
          if (!getSearchIndexSplitsOptions()
              .equals(other.getSearchIndexSplitsOptions())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasSearchIndexSplitsOptions()) {
          hash = (37 * hash) + SEARCH_INDEX_SPLITS_OPTIONS_FIELD_NUMBER;
          hash = (53 * hash) + getSearchIndexSplitsOptions().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * <pre>
       * computeSplits 
       * </pre>
       *
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getSearchIndexSplitsOptionsFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          searchIndexSplitsOptions_ = null;
          if (searchIndexSplitsOptionsBuilder_ != null) {
            searchIndexSplitsOptionsBuilder_.dispose();
            searchIndexSplitsOptionsBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.searchIndexSplitsOptions_ = searchIndexSplitsOptionsBuilder_ == null
                ? searchIndexSplitsOptions_
                : searchIndexSplitsOptionsBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasSearchIndexSplitsOptions()) {
            mergeSearchIndexSplitsOptions(other.getSearchIndexSplitsOptions());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getSearchIndexSplitsOptionsFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>optional string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions searchIndexSplitsOptions_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder> searchIndexSplitsOptionsBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         * @return Whether the searchIndexSplitsOptions field is set.
         */
        public boolean hasSearchIndexSplitsOptions() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         * @return The searchIndexSplitsOptions.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getSearchIndexSplitsOptions() {
          if (searchIndexSplitsOptionsBuilder_ == null) {
            return searchIndexSplitsOptions_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance() : searchIndexSplitsOptions_;
          } else {
            return searchIndexSplitsOptionsBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public Builder setSearchIndexSplitsOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions value) {
          if (searchIndexSplitsOptionsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            searchIndexSplitsOptions_ = value;
          } else {
            searchIndexSplitsOptionsBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public Builder setSearchIndexSplitsOptions(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder builderForValue) {
          if (searchIndexSplitsOptionsBuilder_ == null) {
            searchIndexSplitsOptions_ = builderForValue.build();
          } else {
            searchIndexSplitsOptionsBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public Builder mergeSearchIndexSplitsOptions(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions value) {
          if (searchIndexSplitsOptionsBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              searchIndexSplitsOptions_ != null &&
              searchIndexSplitsOptions_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance()) {
              getSearchIndexSplitsOptionsBuilder().mergeFrom(value);
            } else {
              searchIndexSplitsOptions_ = value;
            }
          } else {
            searchIndexSplitsOptionsBuilder_.mergeFrom(value);
          }
          if (searchIndexSplitsOptions_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public Builder clearSearchIndexSplitsOptions() {
          bitField0_ = (bitField0_ & ~0x00000002);
          searchIndexSplitsOptions_ = null;
          if (searchIndexSplitsOptionsBuilder_ != null) {
            searchIndexSplitsOptionsBuilder_.dispose();
            searchIndexSplitsOptionsBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder getSearchIndexSplitsOptionsBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getSearchIndexSplitsOptionsFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder getSearchIndexSplitsOptionsOrBuilder() {
          if (searchIndexSplitsOptionsBuilder_ != null) {
            return searchIndexSplitsOptionsBuilder_.getMessageOrBuilder();
          } else {
            return searchIndexSplitsOptions_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance() : searchIndexSplitsOptions_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions search_index_splits_options = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder> 
            getSearchIndexSplitsOptionsFieldBuilder() {
          if (searchIndexSplitsOptionsBuilder_ == null) {
            searchIndexSplitsOptionsBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder>(
                    getSearchIndexSplitsOptions(),
                    getParentForChildren(),
                    isClean());
            searchIndexSplitsOptions_ = null;
          }
          return searchIndexSplitsOptionsBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ComputeSplitsRequest>() {
        @java.lang.Override
        public ComputeSplitsRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface SearchIndexSplitsOptionsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional string index_name = 1;</code>
       * @return Whether the indexName field is set.
       */
      boolean hasIndexName();
      /**
       * <code>optional string index_name = 1;</code>
       * @return The indexName.
       */
      java.lang.String getIndexName();
      /**
       * <code>optional string index_name = 1;</code>
       * @return The bytes for indexName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getIndexNameBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions}
     */
    public static final class SearchIndexSplitsOptions extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions)
        SearchIndexSplitsOptionsOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SearchIndexSplitsOptions.class.getName());
      }
      // Use SearchIndexSplitsOptions.newBuilder() to construct.
      private SearchIndexSplitsOptions(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private SearchIndexSplitsOptions() {
        indexName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder.class);
      }
  
      private int bitField0_;
      public static final int INDEX_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object indexName_ = "";
      /**
       * <code>optional string index_name = 1;</code>
       * @return Whether the indexName field is set.
       */
      @java.lang.Override
      public boolean hasIndexName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string index_name = 1;</code>
       * @return The indexName.
       */
      @java.lang.Override
      public java.lang.String getIndexName() {
        java.lang.Object ref = indexName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            indexName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string index_name = 1;</code>
       * @return The bytes for indexName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getIndexNameBytes() {
        java.lang.Object ref = indexName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          indexName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, indexName_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, indexName_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions) obj;
  
        if (hasIndexName() != other.hasIndexName()) return false;
        if (hasIndexName()) {
          if (!getIndexName()
              .equals(other.getIndexName())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasIndexName()) {
          hash = (37 * hash) + INDEX_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getIndexName().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptionsOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          indexName_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.indexName_ = indexName_;
            to_bitField0_ |= 0x00000001;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions.getDefaultInstance()) return this;
          if (other.hasIndexName()) {
            indexName_ = other.indexName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  indexName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object indexName_ = "";
        /**
         * <code>optional string index_name = 1;</code>
         * @return Whether the indexName field is set.
         */
        public boolean hasIndexName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional string index_name = 1;</code>
         * @return The indexName.
         */
        public java.lang.String getIndexName() {
          java.lang.Object ref = indexName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              indexName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string index_name = 1;</code>
         * @return The bytes for indexName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getIndexNameBytes() {
          java.lang.Object ref = indexName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            indexName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string index_name = 1;</code>
         * @param value The indexName to set.
         * @return This builder for chaining.
         */
        public Builder setIndexName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          indexName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional string index_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearIndexName() {
          indexName_ = getDefaultInstance().getIndexName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>optional string index_name = 1;</code>
         * @param value The bytes for indexName to set.
         * @return This builder for chaining.
         */
        public Builder setIndexNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          indexName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.SearchIndexSplitsOptions)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SearchIndexSplitsOptions>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SearchIndexSplitsOptions>() {
        @java.lang.Override
        public SearchIndexSplitsOptions parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SearchIndexSplitsOptions> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SearchIndexSplitsOptions> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SearchIndexSplitsOptions getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ComputeSplitsResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional bytes session_id = 1;</code>
       * @return Whether the sessionId field is set.
       */
      boolean hasSessionId();
      /**
       * <code>optional bytes session_id = 1;</code>
       * @return The sessionId.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSessionId();
  
      /**
       * <code>optional int32 splits_size = 2;</code>
       * @return Whether the splitsSize field is set.
       */
      boolean hasSplitsSize();
      /**
       * <code>optional int32 splits_size = 2;</code>
       * @return The splitsSize.
       */
      int getSplitsSize();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse}
     */
    public static final class ComputeSplitsResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse)
        ComputeSplitsResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          ComputeSplitsResponse.class.getName());
      }
      // Use ComputeSplitsResponse.newBuilder() to construct.
      private ComputeSplitsResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private ComputeSplitsResponse() {
        sessionId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int SESSION_ID_FIELD_NUMBER = 1;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString sessionId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes session_id = 1;</code>
       * @return Whether the sessionId field is set.
       */
      @java.lang.Override
      public boolean hasSessionId() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional bytes session_id = 1;</code>
       * @return The sessionId.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSessionId() {
        return sessionId_;
      }
  
      public static final int SPLITS_SIZE_FIELD_NUMBER = 2;
      private int splitsSize_ = 0;
      /**
       * <code>optional int32 splits_size = 2;</code>
       * @return Whether the splitsSize field is set.
       */
      @java.lang.Override
      public boolean hasSplitsSize() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional int32 splits_size = 2;</code>
       * @return The splitsSize.
       */
      @java.lang.Override
      public int getSplitsSize() {
        return splitsSize_;
      }
  
      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.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBytes(1, sessionId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeInt32(2, splitsSize_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, sessionId_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt32Size(2, splitsSize_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse) obj;
  
        if (hasSessionId() != other.hasSessionId()) return false;
        if (hasSessionId()) {
          if (!getSessionId()
              .equals(other.getSessionId())) return false;
        }
        if (hasSplitsSize() != other.hasSplitsSize()) return false;
        if (hasSplitsSize()) {
          if (getSplitsSize()
              != other.getSplitsSize()) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasSessionId()) {
          hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
          hash = (53 * hash) + getSessionId().hashCode();
        }
        if (hasSplitsSize()) {
          hash = (37 * hash) + SPLITS_SIZE_FIELD_NUMBER;
          hash = (53 * hash) + getSplitsSize();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          sessionId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          splitsSize_ = 0;
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.sessionId_ = sessionId_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.splitsSize_ = splitsSize_;
            to_bitField0_ |= 0x00000002;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse.getDefaultInstance()) return this;
          if (other.hasSessionId()) {
            setSessionId(other.getSessionId());
          }
          if (other.hasSplitsSize()) {
            setSplitsSize(other.getSplitsSize());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  sessionId_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  splitsSize_ = input.readInt32();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 16
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString sessionId_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes session_id = 1;</code>
         * @return Whether the sessionId field is set.
         */
        @java.lang.Override
        public boolean hasSessionId() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional bytes session_id = 1;</code>
         * @return The sessionId.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getSessionId() {
          return sessionId_;
        }
        /**
         * <code>optional bytes session_id = 1;</code>
         * @param value The sessionId to set.
         * @return This builder for chaining.
         */
        public Builder setSessionId(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          sessionId_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes session_id = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearSessionId() {
          bitField0_ = (bitField0_ & ~0x00000001);
          sessionId_ = getDefaultInstance().getSessionId();
          onChanged();
          return this;
        }
  
        private int splitsSize_ ;
        /**
         * <code>optional int32 splits_size = 2;</code>
         * @return Whether the splitsSize field is set.
         */
        @java.lang.Override
        public boolean hasSplitsSize() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional int32 splits_size = 2;</code>
         * @return The splitsSize.
         */
        @java.lang.Override
        public int getSplitsSize() {
          return splitsSize_;
        }
        /**
         * <code>optional int32 splits_size = 2;</code>
         * @param value The splitsSize to set.
         * @return This builder for chaining.
         */
        public Builder setSplitsSize(int value) {
  
          splitsSize_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional int32 splits_size = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearSplitsSize() {
          bitField0_ = (bitField0_ & ~0x00000002);
          splitsSize_ = 0;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.ComputeSplitsResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<ComputeSplitsResponse>() {
        @java.lang.Override
        public ComputeSplitsResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<ComputeSplitsResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ComputeSplitsResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface SQLQueryRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>required string query = 1;</code>
       * @return Whether the query field is set.
       */
      boolean hasQuery();
      /**
       * <code>required string query = 1;</code>
       * @return The query.
       */
      java.lang.String getQuery();
      /**
       * <code>required string query = 1;</code>
       * @return The bytes for query.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getQueryBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
       * @return Whether the version field is set.
       */
      boolean hasVersion();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
       * @return The version.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion();
  
      /**
       * <code>optional int64 sql_version = 3;</code>
       * @return Whether the sqlVersion field is set.
       */
      boolean hasSqlVersion();
      /**
       * <code>optional int64 sql_version = 3;</code>
       * @return The sqlVersion.
       */
      long getSqlVersion();
  
      /**
       * <code>optional string search_token = 5;</code>
       * @return Whether the searchToken field is set.
       */
      boolean hasSearchToken();
      /**
       * <code>optional string search_token = 5;</code>
       * @return The searchToken.
       */
      java.lang.String getSearchToken();
      /**
       * <code>optional string search_token = 5;</code>
       * @return The bytes for searchToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getSearchTokenBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest}
     */
    public static final class SQLQueryRequest extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest)
        SQLQueryRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SQLQueryRequest.class.getName());
      }
      // Use SQLQueryRequest.newBuilder() to construct.
      private SQLQueryRequest(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private SQLQueryRequest() {
        query_ = "";
        version_ = 1;
        searchToken_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.Builder.class);
      }
  
      private int bitField0_;
      public static final int QUERY_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object query_ = "";
      /**
       * <code>required string query = 1;</code>
       * @return Whether the query field is set.
       */
      @java.lang.Override
      public boolean hasQuery() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required string query = 1;</code>
       * @return The query.
       */
      @java.lang.Override
      public java.lang.String getQuery() {
        java.lang.Object ref = query_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            query_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string query = 1;</code>
       * @return The bytes for query.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getQueryBytes() {
        java.lang.Object ref = query_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          query_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int VERSION_FIELD_NUMBER = 2;
      private int version_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
       * @return Whether the version field is set.
       */
      @java.lang.Override public boolean hasVersion() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
       * @return The version.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(version_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.SQL_PLAIN_BUFFER : result;
      }
  
      public static final int SQL_VERSION_FIELD_NUMBER = 3;
      private long sqlVersion_ = 0L;
      /**
       * <code>optional int64 sql_version = 3;</code>
       * @return Whether the sqlVersion field is set.
       */
      @java.lang.Override
      public boolean hasSqlVersion() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional int64 sql_version = 3;</code>
       * @return The sqlVersion.
       */
      @java.lang.Override
      public long getSqlVersion() {
        return sqlVersion_;
      }
  
      public static final int SEARCH_TOKEN_FIELD_NUMBER = 5;
      @SuppressWarnings("serial")
      private volatile java.lang.Object searchToken_ = "";
      /**
       * <code>optional string search_token = 5;</code>
       * @return Whether the searchToken field is set.
       */
      @java.lang.Override
      public boolean hasSearchToken() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional string search_token = 5;</code>
       * @return The searchToken.
       */
      @java.lang.Override
      public java.lang.String getSearchToken() {
        java.lang.Object ref = searchToken_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            searchToken_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string search_token = 5;</code>
       * @return The bytes for searchToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getSearchTokenBytes() {
        java.lang.Object ref = searchToken_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          searchToken_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        if (!hasQuery()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, query_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(2, version_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeInt64(3, sqlVersion_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 5, searchToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, query_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, version_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, sqlVersion_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(5, searchToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest) obj;
  
        if (hasQuery() != other.hasQuery()) return false;
        if (hasQuery()) {
          if (!getQuery()
              .equals(other.getQuery())) return false;
        }
        if (hasVersion() != other.hasVersion()) return false;
        if (hasVersion()) {
          if (version_ != other.version_) return false;
        }
        if (hasSqlVersion() != other.hasSqlVersion()) return false;
        if (hasSqlVersion()) {
          if (getSqlVersion()
              != other.getSqlVersion()) return false;
        }
        if (hasSearchToken() != other.hasSearchToken()) return false;
        if (hasSearchToken()) {
          if (!getSearchToken()
              .equals(other.getSearchToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasQuery()) {
          hash = (37 * hash) + QUERY_FIELD_NUMBER;
          hash = (53 * hash) + getQuery().hashCode();
        }
        if (hasVersion()) {
          hash = (37 * hash) + VERSION_FIELD_NUMBER;
          hash = (53 * hash) + version_;
        }
        if (hasSqlVersion()) {
          hash = (37 * hash) + SQL_VERSION_FIELD_NUMBER;
          hash = (53 * hash) + com.aliyun.ots.thirdparty.com.google.protobuf.Internal.hashLong(
              getSqlVersion());
        }
        if (hasSearchToken()) {
          hash = (37 * hash) + SEARCH_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getSearchToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequestOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          query_ = "";
          version_ = 1;
          sqlVersion_ = 0L;
          searchToken_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.query_ = query_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.version_ = version_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.sqlVersion_ = sqlVersion_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.searchToken_ = searchToken_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest.getDefaultInstance()) return this;
          if (other.hasQuery()) {
            query_ = other.query_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasVersion()) {
            setVersion(other.getVersion());
          }
          if (other.hasSqlVersion()) {
            setSqlVersion(other.getSqlVersion());
          }
          if (other.hasSearchToken()) {
            searchToken_ = other.searchToken_;
            bitField0_ |= 0x00000008;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (!hasQuery()) {
            return false;
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  query_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 16: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(2, tmpRaw);
                  } else {
                    version_ = tmpRaw;
                    bitField0_ |= 0x00000002;
                  }
                  break;
                } // case 16
                case 24: {
                  sqlVersion_ = input.readInt64();
                  bitField0_ |= 0x00000004;
                  break;
                } // case 24
                case 42: {
                  searchToken_ = input.readBytes();
                  bitField0_ |= 0x00000008;
                  break;
                } // case 42
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object query_ = "";
        /**
         * <code>required string query = 1;</code>
         * @return Whether the query field is set.
         */
        public boolean hasQuery() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>required string query = 1;</code>
         * @return The query.
         */
        public java.lang.String getQuery() {
          java.lang.Object ref = query_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              query_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string query = 1;</code>
         * @return The bytes for query.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getQueryBytes() {
          java.lang.Object ref = query_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            query_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string query = 1;</code>
         * @param value The query to set.
         * @return This builder for chaining.
         */
        public Builder setQuery(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          query_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>required string query = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearQuery() {
          query_ = getDefaultInstance().getQuery();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>required string query = 1;</code>
         * @param value The bytes for query to set.
         * @return This builder for chaining.
         */
        public Builder setQueryBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          query_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private int version_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
         * @return Whether the version field is set.
         */
        @java.lang.Override public boolean hasVersion() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
         * @return The version.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(version_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.SQL_PLAIN_BUFFER : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
         * @param value The version to set.
         * @return This builder for chaining.
         */
        public Builder setVersion(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000002;
          version_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearVersion() {
          bitField0_ = (bitField0_ & ~0x00000002);
          version_ = 1;
          onChanged();
          return this;
        }
  
        private long sqlVersion_ ;
        /**
         * <code>optional int64 sql_version = 3;</code>
         * @return Whether the sqlVersion field is set.
         */
        @java.lang.Override
        public boolean hasSqlVersion() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional int64 sql_version = 3;</code>
         * @return The sqlVersion.
         */
        @java.lang.Override
        public long getSqlVersion() {
          return sqlVersion_;
        }
        /**
         * <code>optional int64 sql_version = 3;</code>
         * @param value The sqlVersion to set.
         * @return This builder for chaining.
         */
        public Builder setSqlVersion(long value) {
  
          sqlVersion_ = value;
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional int64 sql_version = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearSqlVersion() {
          bitField0_ = (bitField0_ & ~0x00000004);
          sqlVersion_ = 0L;
          onChanged();
          return this;
        }
  
        private java.lang.Object searchToken_ = "";
        /**
         * <code>optional string search_token = 5;</code>
         * @return Whether the searchToken field is set.
         */
        public boolean hasSearchToken() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional string search_token = 5;</code>
         * @return The searchToken.
         */
        public java.lang.String getSearchToken() {
          java.lang.Object ref = searchToken_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              searchToken_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string search_token = 5;</code>
         * @return The bytes for searchToken.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getSearchTokenBytes() {
          java.lang.Object ref = searchToken_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            searchToken_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string search_token = 5;</code>
         * @param value The searchToken to set.
         * @return This builder for chaining.
         */
        public Builder setSearchToken(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          searchToken_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
        /**
         * <code>optional string search_token = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearSearchToken() {
          searchToken_ = getDefaultInstance().getSearchToken();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
          return this;
        }
        /**
         * <code>optional string search_token = 5;</code>
         * @param value The bytes for searchToken to set.
         * @return This builder for chaining.
         */
        public Builder setSearchTokenBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          searchToken_ = value;
          bitField0_ |= 0x00000008;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.SQLQueryRequest)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryRequest>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SQLQueryRequest>() {
        @java.lang.Override
        public SQLQueryRequest parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryRequest> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface TableConsumedCapacityOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      boolean hasTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      java.lang.String getTableName();
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       * @return Whether the consumed field is set.
       */
      boolean hasConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       * @return The consumed.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       * @return Whether the reservedThroughput field is set.
       */
      boolean hasReservedThroughput();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       * @return The reservedThroughput.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity}
     */
    public static final class TableConsumedCapacity extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity)
        TableConsumedCapacityOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          TableConsumedCapacity.class.getName());
      }
      // Use TableConsumedCapacity.newBuilder() to construct.
      private TableConsumedCapacity(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private TableConsumedCapacity() {
        tableName_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder.class);
      }
  
      private int bitField0_;
      public static final int TABLE_NAME_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private volatile java.lang.Object tableName_ = "";
      /**
       * <code>optional string table_name = 1;</code>
       * @return Whether the tableName field is set.
       */
      @java.lang.Override
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The tableName.
       */
      @java.lang.Override
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            tableName_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string table_name = 1;</code>
       * @return The bytes for tableName.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CONSUMED_FIELD_NUMBER = 2;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       * @return Whether the consumed field is set.
       */
      @java.lang.Override
      public boolean hasConsumed() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       * @return The consumed.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
        return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
      }
  
      public static final int RESERVED_THROUGHPUT_FIELD_NUMBER = 3;
      private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       * @return Whether the reservedThroughput field is set.
       */
      @java.lang.Override
      public boolean hasReservedThroughput() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       * @return The reservedThroughput.
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
        return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        if (hasConsumed()) {
          if (!getConsumed().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        if (hasReservedThroughput()) {
          if (!getReservedThroughput().isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (((bitField0_ & 0x00000001) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeMessage(2, getConsumed());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeMessage(3, getReservedThroughput());
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(1, tableName_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getConsumed());
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getReservedThroughput());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity) obj;
  
        if (hasTableName() != other.hasTableName()) return false;
        if (hasTableName()) {
          if (!getTableName()
              .equals(other.getTableName())) return false;
        }
        if (hasConsumed() != other.hasConsumed()) return false;
        if (hasConsumed()) {
          if (!getConsumed()
              .equals(other.getConsumed())) return false;
        }
        if (hasReservedThroughput() != other.hasReservedThroughput()) return false;
        if (hasReservedThroughput()) {
          if (!getReservedThroughput()
              .equals(other.getReservedThroughput())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasTableName()) {
          hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
          hash = (53 * hash) + getTableName().hashCode();
        }
        if (hasConsumed()) {
          hash = (37 * hash) + CONSUMED_FIELD_NUMBER;
          hash = (53 * hash) + getConsumed().hashCode();
        }
        if (hasReservedThroughput()) {
          hash = (37 * hash) + RESERVED_THROUGHPUT_FIELD_NUMBER;
          hash = (53 * hash) + getReservedThroughput().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
                  .alwaysUseFieldBuilders) {
            getConsumedFieldBuilder();
            getReservedThroughputFieldBuilder();
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          tableName_ = "";
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity(this);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) != 0)) {
            result.tableName_ = tableName_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.consumed_ = consumedBuilder_ == null
                ? consumed_
                : consumedBuilder_.build();
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.reservedThroughput_ = reservedThroughputBuilder_ == null
                ? reservedThroughput_
                : reservedThroughputBuilder_.build();
            to_bitField0_ |= 0x00000004;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.getDefaultInstance()) return this;
          if (other.hasTableName()) {
            tableName_ = other.tableName_;
            bitField0_ |= 0x00000001;
            onChanged();
          }
          if (other.hasConsumed()) {
            mergeConsumed(other.getConsumed());
          }
          if (other.hasReservedThroughput()) {
            mergeReservedThroughput(other.getReservedThroughput());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          if (hasConsumed()) {
            if (!getConsumed().isInitialized()) {
              return false;
            }
          }
          if (hasReservedThroughput()) {
            if (!getReservedThroughput().isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  tableName_ = input.readBytes();
                  bitField0_ |= 0x00000001;
                  break;
                } // case 10
                case 18: {
                  input.readMessage(
                      getConsumedFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 26: {
                  input.readMessage(
                      getReservedThroughputFieldBuilder().getBuilder(),
                      extensionRegistry);
                  bitField0_ |= 0x00000004;
                  break;
                } // case 26
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object tableName_ = "";
        /**
         * <code>optional string table_name = 1;</code>
         * @return Whether the tableName field is set.
         */
        public boolean hasTableName() {
          return ((bitField0_ & 0x00000001) != 0);
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The tableName.
         */
        public java.lang.String getTableName() {
          java.lang.Object ref = tableName_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              tableName_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return The bytes for tableName.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getTableNameBytes() {
          java.lang.Object ref = tableName_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            tableName_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableName(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @return This builder for chaining.
         */
        public Builder clearTableName() {
          tableName_ = getDefaultInstance().getTableName();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>optional string table_name = 1;</code>
         * @param value The bytes for tableName to set.
         * @return This builder for chaining.
         */
        public Builder setTableNameBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          tableName_ = value;
          bitField0_ |= 0x00000001;
          onChanged();
          return this;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity consumed_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> consumedBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         * @return Whether the consumed field is set.
         */
        public boolean hasConsumed() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         * @return The consumed.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity getConsumed() {
          if (consumedBuilder_ == null) {
            return consumed_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          } else {
            return consumedBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public Builder setConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            consumed_ = value;
          } else {
            consumedBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public Builder setConsumed(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder builderForValue) {
          if (consumedBuilder_ == null) {
            consumed_ = builderForValue.build();
          } else {
            consumedBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public Builder mergeConsumed(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity value) {
          if (consumedBuilder_ == null) {
            if (((bitField0_ & 0x00000002) != 0) &&
              consumed_ != null &&
              consumed_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance()) {
              getConsumedBuilder().mergeFrom(value);
            } else {
              consumed_ = value;
            }
          } else {
            consumedBuilder_.mergeFrom(value);
          }
          if (consumed_ != null) {
            bitField0_ |= 0x00000002;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public Builder clearConsumed() {
          bitField0_ = (bitField0_ & ~0x00000002);
          consumed_ = null;
          if (consumedBuilder_ != null) {
            consumedBuilder_.dispose();
            consumedBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder getConsumedBuilder() {
          bitField0_ |= 0x00000002;
          onChanged();
          return getConsumedFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder getConsumedOrBuilder() {
          if (consumedBuilder_ != null) {
            return consumedBuilder_.getMessageOrBuilder();
          } else {
            return consumed_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.getDefaultInstance() : consumed_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ConsumedCapacity consumed = 2;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder> 
            getConsumedFieldBuilder() {
          if (consumedBuilder_ == null) {
            consumedBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ConsumedCapacityOrBuilder>(
                    getConsumed(),
                    getParentForChildren(),
                    isClean());
            consumed_ = null;
          }
          return consumedBuilder_;
        }
  
        private com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput reservedThroughput_;
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> reservedThroughputBuilder_;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         * @return Whether the reservedThroughput field is set.
         */
        public boolean hasReservedThroughput() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         * @return The reservedThroughput.
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput getReservedThroughput() {
          if (reservedThroughputBuilder_ == null) {
            return reservedThroughput_ == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          } else {
            return reservedThroughputBuilder_.getMessage();
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public Builder setReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            reservedThroughput_ = value;
          } else {
            reservedThroughputBuilder_.setMessage(value);
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public Builder setReservedThroughput(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder builderForValue) {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughput_ = builderForValue.build();
          } else {
            reservedThroughputBuilder_.setMessage(builderForValue.build());
          }
          bitField0_ |= 0x00000004;
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public Builder mergeReservedThroughput(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput value) {
          if (reservedThroughputBuilder_ == null) {
            if (((bitField0_ & 0x00000004) != 0) &&
              reservedThroughput_ != null &&
              reservedThroughput_ != com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance()) {
              getReservedThroughputBuilder().mergeFrom(value);
            } else {
              reservedThroughput_ = value;
            }
          } else {
            reservedThroughputBuilder_.mergeFrom(value);
          }
          if (reservedThroughput_ != null) {
            bitField0_ |= 0x00000004;
            onChanged();
          }
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public Builder clearReservedThroughput() {
          bitField0_ = (bitField0_ & ~0x00000004);
          reservedThroughput_ = null;
          if (reservedThroughputBuilder_ != null) {
            reservedThroughputBuilder_.dispose();
            reservedThroughputBuilder_ = null;
          }
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder getReservedThroughputBuilder() {
          bitField0_ |= 0x00000004;
          onChanged();
          return getReservedThroughputFieldBuilder().getBuilder();
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder getReservedThroughputOrBuilder() {
          if (reservedThroughputBuilder_ != null) {
            return reservedThroughputBuilder_.getMessageOrBuilder();
          } else {
            return reservedThroughput_ == null ?
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.getDefaultInstance() : reservedThroughput_;
          }
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.ReservedThroughput reserved_throughput = 3;</code>
         */
        private com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder> 
            getReservedThroughputFieldBuilder() {
          if (reservedThroughputBuilder_ == null) {
            reservedThroughputBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.SingleFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughput.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.ReservedThroughputOrBuilder>(
                    getReservedThroughput(),
                    getParentForChildren(),
                    isClean());
            reservedThroughput_ = null;
          }
          return reservedThroughputBuilder_;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableConsumedCapacity>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<TableConsumedCapacity>() {
        @java.lang.Override
        public TableConsumedCapacity parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableConsumedCapacity> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<TableConsumedCapacity> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface SQLQueryResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse)
        com.aliyun.ots.thirdparty.com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> 
          getConsumesList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getConsumes(int index);
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      int getConsumesCount();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder> 
          getConsumesOrBuilderList();
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder getConsumesOrBuilder(
          int index);
  
      /**
       * <code>optional bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      boolean hasRows();
      /**
       * <code>optional bytes rows = 2;</code>
       * @return The rows.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
       * @return Whether the version field is set.
       */
      boolean hasVersion();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
       * @return The version.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion();
  
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
       * @return Whether the type field is set.
       */
      boolean hasType();
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
       * @return The type.
       */
      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType getType();
  
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return Whether the nextSearchToken field is set.
       */
      boolean hasNextSearchToken();
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return The nextSearchToken.
       */
      java.lang.String getNextSearchToken();
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return The bytes for nextSearchToken.
       */
      com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextSearchTokenBytes();
    }
    /**
     * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse}
     */
    public static final class SQLQueryResponse extends
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage implements
        // @@protoc_insertion_point(message_implements:com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse)
        SQLQueryResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      static {
        com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
          com.aliyun.ots.thirdparty.com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
          /* major= */ 4,
          /* minor= */ 28,
          /* patch= */ 2,
          /* suffix= */ "",
          SQLQueryResponse.class.getName());
      }
      // Use SQLQueryResponse.newBuilder() to construct.
      private SQLQueryResponse(com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
      }
      private SQLQueryResponse() {
        consumes_ = java.util.Collections.emptyList();
        rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        version_ = 1;
        type_ = 1;
        nextSearchToken_ = "";
      }
  
      public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor;
      }
  
      @java.lang.Override
      protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int CONSUMES_FIELD_NUMBER = 1;
      @SuppressWarnings("serial")
      private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> consumes_;
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      @java.lang.Override
      public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> getConsumesList() {
        return consumes_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      @java.lang.Override
      public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder> 
          getConsumesOrBuilderList() {
        return consumes_;
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      @java.lang.Override
      public int getConsumesCount() {
        return consumes_.size();
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getConsumes(int index) {
        return consumes_.get(index);
      }
      /**
       * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
       */
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder getConsumesOrBuilder(
          int index) {
        return consumes_.get(index);
      }
  
      public static final int ROWS_FIELD_NUMBER = 2;
      private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes rows = 2;</code>
       * @return Whether the rows field is set.
       */
      @java.lang.Override
      public boolean hasRows() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional bytes rows = 2;</code>
       * @return The rows.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
        return rows_;
      }
  
      public static final int VERSION_FIELD_NUMBER = 3;
      private int version_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
       * @return Whether the version field is set.
       */
      @java.lang.Override public boolean hasVersion() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
       * @return The version.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(version_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.SQL_PLAIN_BUFFER : result;
      }
  
      public static final int TYPE_FIELD_NUMBER = 4;
      private int type_ = 1;
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
       * @return Whether the type field is set.
       */
      @java.lang.Override public boolean hasType() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
       * @return The type.
       */
      @java.lang.Override public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType getType() {
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType.forNumber(type_);
        return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType.SQL_SELECT : result;
      }
  
      public static final int NEXT_SEARCH_TOKEN_FIELD_NUMBER = 8;
      @SuppressWarnings("serial")
      private volatile java.lang.Object nextSearchToken_ = "";
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return Whether the nextSearchToken field is set.
       */
      @java.lang.Override
      public boolean hasNextSearchToken() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return The nextSearchToken.
       */
      @java.lang.Override
      public java.lang.String getNextSearchToken() {
        java.lang.Object ref = nextSearchToken_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs = 
              (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            nextSearchToken_ = s;
          }
          return s;
        }
      }
      /**
       * <code>optional string next_search_token = 8;</code>
       * @return The bytes for nextSearchToken.
       */
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
          getNextSearchTokenBytes() {
        java.lang.Object ref = nextSearchToken_;
        if (ref instanceof java.lang.String) {
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
              com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nextSearchToken_ = b;
          return b;
        } else {
          return (com.aliyun.ots.thirdparty.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;
  
        for (int i = 0; i < getConsumesCount(); i++) {
          if (!getConsumes(i).isInitialized()) {
            memoizedIsInitialized = 0;
            return false;
          }
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < consumes_.size(); i++) {
          output.writeMessage(1, consumes_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          output.writeBytes(2, rows_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          output.writeEnum(3, version_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          output.writeEnum(4, type_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.writeString(output, 8, nextSearchToken_);
        }
        getUnknownFields().writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < consumes_.size(); i++) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, consumes_.get(i));
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, rows_);
        }
        if (((bitField0_ & 0x00000002) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(3, version_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.CodedOutputStream
            .computeEnumSize(4, type_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          size += com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.computeStringSize(8, nextSearchToken_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse)) {
          return super.equals(obj);
        }
        com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse other = (com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse) obj;
  
        if (!getConsumesList()
            .equals(other.getConsumesList())) return false;
        if (hasRows() != other.hasRows()) return false;
        if (hasRows()) {
          if (!getRows()
              .equals(other.getRows())) return false;
        }
        if (hasVersion() != other.hasVersion()) return false;
        if (hasVersion()) {
          if (version_ != other.version_) return false;
        }
        if (hasType() != other.hasType()) return false;
        if (hasType()) {
          if (type_ != other.type_) return false;
        }
        if (hasNextSearchToken() != other.hasNextSearchToken()) return false;
        if (hasNextSearchToken()) {
          if (!getNextSearchToken()
              .equals(other.getNextSearchToken())) return false;
        }
        if (!getUnknownFields().equals(other.getUnknownFields())) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getConsumesCount() > 0) {
          hash = (37 * hash) + CONSUMES_FIELD_NUMBER;
          hash = (53 * hash) + getConsumesList().hashCode();
        }
        if (hasRows()) {
          hash = (37 * hash) + ROWS_FIELD_NUMBER;
          hash = (53 * hash) + getRows().hashCode();
        }
        if (hasVersion()) {
          hash = (37 * hash) + VERSION_FIELD_NUMBER;
          hash = (53 * hash) + version_;
        }
        if (hasType()) {
          hash = (37 * hash) + TYPE_FIELD_NUMBER;
          hash = (53 * hash) + type_;
        }
        if (hasNextSearchToken()) {
          hash = (37 * hash) + NEXT_SEARCH_TOKEN_FIELD_NUMBER;
          hash = (53 * hash) + getNextSearchToken().hashCode();
        }
        hash = (29 * hash) + getUnknownFields().hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          java.nio.ByteBuffer data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.ByteString data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(byte[] data)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          byte[] data,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input);
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseDelimitedFrom(
          java.io.InputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input);
      }
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse parseFrom(
          com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
          com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse 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.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse}
       */
      public static final class Builder extends
          com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse)
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponseOrBuilder {
        public static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor;
        }
  
        @java.lang.Override
        protected com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.class, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.Builder.class);
        }
  
        // Construct using com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.newBuilder()
        private Builder() {
  
        }
  
        private Builder(
            com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
  
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          bitField0_ = 0;
          if (consumesBuilder_ == null) {
            consumes_ = java.util.Collections.emptyList();
          } else {
            consumes_ = null;
            consumesBuilder_.clear();
          }
          bitField0_ = (bitField0_ & ~0x00000001);
          rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
          version_ = 1;
          type_ = 1;
          nextSearchToken_ = "";
          return this;
        }
  
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse getDefaultInstanceForType() {
          return com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.getDefaultInstance();
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse build() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse buildPartial() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse result = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse(this);
          buildPartialRepeatedFields(result);
          if (bitField0_ != 0) { buildPartial0(result); }
          onBuilt();
          return result;
        }
  
        private void buildPartialRepeatedFields(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse result) {
          if (consumesBuilder_ == null) {
            if (((bitField0_ & 0x00000001) != 0)) {
              consumes_ = java.util.Collections.unmodifiableList(consumes_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.consumes_ = consumes_;
          } else {
            result.consumes_ = consumesBuilder_.build();
          }
        }
  
        private void buildPartial0(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse result) {
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000002) != 0)) {
            result.rows_ = rows_;
            to_bitField0_ |= 0x00000001;
          }
          if (((from_bitField0_ & 0x00000004) != 0)) {
            result.version_ = version_;
            to_bitField0_ |= 0x00000002;
          }
          if (((from_bitField0_ & 0x00000008) != 0)) {
            result.type_ = type_;
            to_bitField0_ |= 0x00000004;
          }
          if (((from_bitField0_ & 0x00000010) != 0)) {
            result.nextSearchToken_ = nextSearchToken_;
            to_bitField0_ |= 0x00000008;
          }
          result.bitField0_ |= to_bitField0_;
        }
  
        @java.lang.Override
        public Builder mergeFrom(com.aliyun.ots.thirdparty.com.google.protobuf.Message other) {
          if (other instanceof com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse) {
            return mergeFrom((com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse other) {
          if (other == com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse.getDefaultInstance()) return this;
          if (consumesBuilder_ == null) {
            if (!other.consumes_.isEmpty()) {
              if (consumes_.isEmpty()) {
                consumes_ = other.consumes_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureConsumesIsMutable();
                consumes_.addAll(other.consumes_);
              }
              onChanged();
            }
          } else {
            if (!other.consumes_.isEmpty()) {
              if (consumesBuilder_.isEmpty()) {
                consumesBuilder_.dispose();
                consumesBuilder_ = null;
                consumes_ = other.consumes_;
                bitField0_ = (bitField0_ & ~0x00000001);
                consumesBuilder_ = 
                  com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                     getConsumesFieldBuilder() : null;
              } else {
                consumesBuilder_.addAllMessages(other.consumes_);
              }
            }
          }
          if (other.hasRows()) {
            setRows(other.getRows());
          }
          if (other.hasVersion()) {
            setVersion(other.getVersion());
          }
          if (other.hasType()) {
            setType(other.getType());
          }
          if (other.hasNextSearchToken()) {
            nextSearchToken_ = other.nextSearchToken_;
            bitField0_ |= 0x00000010;
            onChanged();
          }
          this.mergeUnknownFields(other.getUnknownFields());
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          for (int i = 0; i < getConsumesCount(); i++) {
            if (!getConsumes(i).isInitialized()) {
              return false;
            }
          }
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          if (extensionRegistry == null) {
            throw new java.lang.NullPointerException();
          }
          try {
            boolean done = false;
            while (!done) {
              int tag = input.readTag();
              switch (tag) {
                case 0:
                  done = true;
                  break;
                case 10: {
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity m =
                      input.readMessage(
                          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.parser(),
                          extensionRegistry);
                  if (consumesBuilder_ == null) {
                    ensureConsumesIsMutable();
                    consumes_.add(m);
                  } else {
                    consumesBuilder_.addMessage(m);
                  }
                  break;
                } // case 10
                case 18: {
                  rows_ = input.readBytes();
                  bitField0_ |= 0x00000002;
                  break;
                } // case 18
                case 24: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(3, tmpRaw);
                  } else {
                    version_ = tmpRaw;
                    bitField0_ |= 0x00000004;
                  }
                  break;
                } // case 24
                case 32: {
                  int tmpRaw = input.readEnum();
                  com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType tmpValue =
                      com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType.forNumber(tmpRaw);
                  if (tmpValue == null) {
                    mergeUnknownVarintField(4, tmpRaw);
                  } else {
                    type_ = tmpRaw;
                    bitField0_ |= 0x00000008;
                  }
                  break;
                } // case 32
                case 66: {
                  nextSearchToken_ = input.readBytes();
                  bitField0_ |= 0x00000010;
                  break;
                } // case 66
                default: {
                  if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                    done = true; // was an endgroup tag
                  }
                  break;
                } // default:
              } // switch (tag)
            } // while (!done)
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.unwrapIOException();
          } finally {
            onChanged();
          } // finally
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> consumes_ =
          java.util.Collections.emptyList();
        private void ensureConsumesIsMutable() {
          if (!((bitField0_ & 0x00000001) != 0)) {
            consumes_ = new java.util.ArrayList<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity>(consumes_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder> consumesBuilder_;
  
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> getConsumesList() {
          if (consumesBuilder_ == null) {
            return java.util.Collections.unmodifiableList(consumes_);
          } else {
            return consumesBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public int getConsumesCount() {
          if (consumesBuilder_ == null) {
            return consumes_.size();
          } else {
            return consumesBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity getConsumes(int index) {
          if (consumesBuilder_ == null) {
            return consumes_.get(index);
          } else {
            return consumesBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder setConsumes(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity value) {
          if (consumesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureConsumesIsMutable();
            consumes_.set(index, value);
            onChanged();
          } else {
            consumesBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder setConsumes(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder builderForValue) {
          if (consumesBuilder_ == null) {
            ensureConsumesIsMutable();
            consumes_.set(index, builderForValue.build());
            onChanged();
          } else {
            consumesBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder addConsumes(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity value) {
          if (consumesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureConsumesIsMutable();
            consumes_.add(value);
            onChanged();
          } else {
            consumesBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder addConsumes(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity value) {
          if (consumesBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureConsumesIsMutable();
            consumes_.add(index, value);
            onChanged();
          } else {
            consumesBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder addConsumes(
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder builderForValue) {
          if (consumesBuilder_ == null) {
            ensureConsumesIsMutable();
            consumes_.add(builderForValue.build());
            onChanged();
          } else {
            consumesBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder addConsumes(
            int index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder builderForValue) {
          if (consumesBuilder_ == null) {
            ensureConsumesIsMutable();
            consumes_.add(index, builderForValue.build());
            onChanged();
          } else {
            consumesBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder addAllConsumes(
            java.lang.Iterable<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity> values) {
          if (consumesBuilder_ == null) {
            ensureConsumesIsMutable();
            com.aliyun.ots.thirdparty.com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, consumes_);
            onChanged();
          } else {
            consumesBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder clearConsumes() {
          if (consumesBuilder_ == null) {
            consumes_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            consumesBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public Builder removeConsumes(int index) {
          if (consumesBuilder_ == null) {
            ensureConsumesIsMutable();
            consumes_.remove(index);
            onChanged();
          } else {
            consumesBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder getConsumesBuilder(
            int index) {
          return getConsumesFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder getConsumesOrBuilder(
            int index) {
          if (consumesBuilder_ == null) {
            return consumes_.get(index);  } else {
            return consumesBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public java.util.List<? extends com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder> 
             getConsumesOrBuilderList() {
          if (consumesBuilder_ != null) {
            return consumesBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(consumes_);
          }
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder addConsumesBuilder() {
          return getConsumesFieldBuilder().addBuilder(
              com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder addConsumesBuilder(
            int index) {
          return getConsumesFieldBuilder().addBuilder(
              index, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.getDefaultInstance());
        }
        /**
         * <code>repeated .com.alicloud.openservices.tablestore.core.protocol.TableConsumedCapacity consumes = 1;</code>
         */
        public java.util.List<com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder> 
             getConsumesBuilderList() {
          return getConsumesFieldBuilder().getBuilderList();
        }
        private com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
            com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder> 
            getConsumesFieldBuilder() {
          if (consumesBuilder_ == null) {
            consumesBuilder_ = new com.aliyun.ots.thirdparty.com.google.protobuf.RepeatedFieldBuilder<
                com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacity.Builder, com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.TableConsumedCapacityOrBuilder>(
                    consumes_,
                    ((bitField0_ & 0x00000001) != 0),
                    getParentForChildren(),
                    isClean());
            consumes_ = null;
          }
          return consumesBuilder_;
        }
  
        private com.aliyun.ots.thirdparty.com.google.protobuf.ByteString rows_ = com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>optional bytes rows = 2;</code>
         * @return Whether the rows field is set.
         */
        @java.lang.Override
        public boolean hasRows() {
          return ((bitField0_ & 0x00000002) != 0);
        }
        /**
         * <code>optional bytes rows = 2;</code>
         * @return The rows.
         */
        @java.lang.Override
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString getRows() {
          return rows_;
        }
        /**
         * <code>optional bytes rows = 2;</code>
         * @param value The rows to set.
         * @return This builder for chaining.
         */
        public Builder setRows(com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          rows_ = value;
          bitField0_ |= 0x00000002;
          onChanged();
          return this;
        }
        /**
         * <code>optional bytes rows = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRows() {
          bitField0_ = (bitField0_ & ~0x00000002);
          rows_ = getDefaultInstance().getRows();
          onChanged();
          return this;
        }
  
        private int version_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
         * @return Whether the version field is set.
         */
        @java.lang.Override public boolean hasVersion() {
          return ((bitField0_ & 0x00000004) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
         * @return The version.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion getVersion() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.forNumber(version_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion.SQL_PLAIN_BUFFER : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
         * @param value The version to set.
         * @return This builder for chaining.
         */
        public Builder setVersion(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLPayloadVersion value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000004;
          version_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLPayloadVersion version = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearVersion() {
          bitField0_ = (bitField0_ & ~0x00000004);
          version_ = 1;
          onChanged();
          return this;
        }
  
        private int type_ = 1;
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
         * @return Whether the type field is set.
         */
        @java.lang.Override public boolean hasType() {
          return ((bitField0_ & 0x00000008) != 0);
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
         * @return The type.
         */
        @java.lang.Override
        public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType getType() {
          com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType result = com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType.forNumber(type_);
          return result == null ? com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType.SQL_SELECT : result;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
         * @param value The type to set.
         * @return This builder for chaining.
         */
        public Builder setType(com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLStatementType value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000008;
          type_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <code>optional .com.alicloud.openservices.tablestore.core.protocol.SQLStatementType type = 4;</code>
         * @return This builder for chaining.
         */
        public Builder clearType() {
          bitField0_ = (bitField0_ & ~0x00000008);
          type_ = 1;
          onChanged();
          return this;
        }
  
        private java.lang.Object nextSearchToken_ = "";
        /**
         * <code>optional string next_search_token = 8;</code>
         * @return Whether the nextSearchToken field is set.
         */
        public boolean hasNextSearchToken() {
          return ((bitField0_ & 0x00000010) != 0);
        }
        /**
         * <code>optional string next_search_token = 8;</code>
         * @return The nextSearchToken.
         */
        public java.lang.String getNextSearchToken() {
          java.lang.Object ref = nextSearchToken_;
          if (!(ref instanceof java.lang.String)) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString bs =
                (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            if (bs.isValidUtf8()) {
              nextSearchToken_ = s;
            }
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>optional string next_search_token = 8;</code>
         * @return The bytes for nextSearchToken.
         */
        public com.aliyun.ots.thirdparty.com.google.protobuf.ByteString
            getNextSearchTokenBytes() {
          java.lang.Object ref = nextSearchToken_;
          if (ref instanceof String) {
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString b = 
                com.aliyun.ots.thirdparty.com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            nextSearchToken_ = b;
            return b;
          } else {
            return (com.aliyun.ots.thirdparty.com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>optional string next_search_token = 8;</code>
         * @param value The nextSearchToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextSearchToken(
            java.lang.String value) {
          if (value == null) { throw new NullPointerException(); }
          nextSearchToken_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_search_token = 8;</code>
         * @return This builder for chaining.
         */
        public Builder clearNextSearchToken() {
          nextSearchToken_ = getDefaultInstance().getNextSearchToken();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>optional string next_search_token = 8;</code>
         * @param value The bytes for nextSearchToken to set.
         * @return This builder for chaining.
         */
        public Builder setNextSearchTokenBytes(
            com.aliyun.ots.thirdparty.com.google.protobuf.ByteString value) {
          if (value == null) { throw new NullPointerException(); }
          nextSearchToken_ = value;
          bitField0_ |= 0x00000010;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse)
      }
  
      // @@protoc_insertion_point(class_scope:com.alicloud.openservices.tablestore.core.protocol.SQLQueryResponse)
      private static final com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse();
      }
  
      public static com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryResponse>
          PARSER = new com.aliyun.ots.thirdparty.com.google.protobuf.AbstractParser<SQLQueryResponse>() {
        @java.lang.Override
        public SQLQueryResponse parsePartialFrom(
            com.aliyun.ots.thirdparty.com.google.protobuf.CodedInputStream input,
            com.aliyun.ots.thirdparty.com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException {
          Builder builder = newBuilder();
          try {
            builder.mergeFrom(input, extensionRegistry);
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException e) {
            throw e.setUnfinishedMessage(builder.buildPartial());
          } catch (com.aliyun.ots.thirdparty.com.google.protobuf.UninitializedMessageException e) {
            throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
          } catch (java.io.IOException e) {
            throw new com.aliyun.ots.thirdparty.com.google.protobuf.InvalidProtocolBufferException(e)
                .setUnfinishedMessage(builder.buildPartial());
          }
          return builder.buildPartial();
        }
      };
  
      public static com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.aliyun.ots.thirdparty.com.google.protobuf.Parser<SQLQueryResponse> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.alicloud.openservices.tablestore.core.protocol.OtsInternalApi.SQLQueryResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_fieldAccessorTable;
    private static final com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.Descriptor
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor;
    private static final 
      com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_fieldAccessorTable;
  
    public static com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.FileDescriptor
        getDescriptor() {
      return descriptor;
    }
    private static  com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.FileDescriptor
        descriptor;
    static {
      java.lang.String[] descriptorData = {
        "\n\026ots_internal_api.proto\0222com.alicloud.o" +
        "penservices.tablestore.core.protocol\"\214\001\n" +
        "\005Error\022\014\n\004code\030\001 \002(\t\022\017\n\007message\030\002 \001(\t\022d\n" +
        "\024access_denied_detail\030\003 \001(\0132F.com.aliclo" +
        "ud.openservices.tablestore.core.protocol" +
        ".AccessDeniedDetail\"\341\001\n\022AccessDeniedDeta" +
        "il\022\023\n\013auth_action\030\001 \002(\t\022\033\n\023auth_principa" +
        "l_type\030\002 \002(\t\022\037\n\027auth_principal_owner_id\030" +
        "\003 \002(\t\022#\n\033auth_principal_display_name\030\004 \002" +
        "(\t\022\023\n\013policy_type\030\005 \002(\t\022\032\n\022no_permission" +
        "_type\030\006 \002(\t\022\"\n\032encoded_diagnostic_messag" +
        "e\030\007 \001(\t\"\310\001\n\020PrimaryKeySchema\022\014\n\004name\030\001 \002" +
        "(\t\022P\n\004type\030\002 \002(\0162B.com.alicloud.openserv" +
        "ices.tablestore.core.protocol.PrimaryKey" +
        "Type\022T\n\006option\030\003 \001(\0162D.com.alicloud.open" +
        "services.tablestore.core.protocol.Primar" +
        "yKeyOption\",\n\016PartitionRange\022\r\n\005begin\030\001 " +
        "\002(\014\022\013\n\003end\030\002 \002(\014\"x\n\023DefinedColumnSchema\022" +
        "\014\n\004name\030\001 \002(\t\022S\n\004type\030\002 \002(\0162E.com.aliclo" +
        "ud.openservices.tablestore.core.protocol" +
        ".DefinedColumnType\"\220\001\n\014TableOptions\022\024\n\014t" +
        "ime_to_live\030\001 \001(\005\022\024\n\014max_versions\030\002 \001(\005\022" +
        "%\n\035deviation_cell_version_in_sec\030\005 \001(\003\022\024" +
        "\n\014allow_update\030\006 \001(\010\022\027\n\017update_full_row\030" +
        "\007 \001(\010\"\327\002\n\tIndexMeta\022\014\n\004name\030\001 \002(\t\022\023\n\013pri" +
        "mary_key\030\002 \003(\t\022\026\n\016defined_column\030\003 \003(\t\022^" +
        "\n\021index_update_mode\030\004 \002(\0162C.com.alicloud" +
        ".openservices.tablestore.core.protocol.I" +
        "ndexUpdateMode\022Q\n\nindex_type\030\005 \002(\0162=.com" +
        ".alicloud.openservices.tablestore.core.p" +
        "rotocol.IndexType\022\\\n\020index_sync_phase\030\006 " +
        "\001(\0162B.com.alicloud.openservices.tablesto" +
        "re.core.protocol.IndexSyncPhase\"\333\001\n\tTabl" +
        "eMeta\022\022\n\ntable_name\030\001 \002(\t\022Y\n\013primary_key" +
        "\030\002 \003(\0132D.com.alicloud.openservices.table" +
        "store.core.protocol.PrimaryKeySchema\022_\n\016" +
        "defined_column\030\003 \003(\0132G.com.alicloud.open" +
        "services.tablestore.core.protocol.Define" +
        "dColumnSchema\"\211\001\n\tCondition\022b\n\rrow_exist" +
        "ence\030\001 \002(\0162K.com.alicloud.openservices.t" +
        "ablestore.core.protocol.RowExistenceExpe" +
        "ctation\022\030\n\020column_condition\030\002 \001(\014\"+\n\014Cap" +
        "acityUnit\022\014\n\004read\030\001 \001(\005\022\r\n\005write\030\002 \001(\005\"9" +
        "\n\020CapacityDataSize\022\021\n\tread_size\030\001 \001(\003\022\022\n" +
        "\nwrite_size\030\002 \001(\003\"\254\001\n\031ReservedThroughput" +
        "Details\022W\n\rcapacity_unit\030\001 \002(\0132@.com.ali" +
        "cloud.openservices.tablestore.core.proto" +
        "col.CapacityUnit\022\032\n\022last_increase_time\030\002" +
        " \002(\003\022\032\n\022last_decrease_time\030\003 \001(\003\"m\n\022Rese" +
        "rvedThroughput\022W\n\rcapacity_unit\030\001 \002(\0132@." +
        "com.alicloud.openservices.tablestore.cor" +
        "e.protocol.CapacityUnit\"\315\001\n\020ConsumedCapa" +
        "city\022W\n\rcapacity_unit\030\001 \002(\0132@.com.aliclo" +
        "ud.openservices.tablestore.core.protocol" +
        ".CapacityUnit\022`\n\022capacity_data_size\030\002 \001(" +
        "\0132D.com.alicloud.openservices.tablestore" +
        ".core.protocol.CapacityDataSize\"]\n\023Strea" +
        "mSpecification\022\025\n\renable_stream\030\001 \002(\010\022\027\n" +
        "\017expiration_time\030\002 \001(\005\022\026\n\016columns_to_get" +
        "\030\003 \003(\t\"\203\001\n\rStreamDetails\022\025\n\renable_strea" +
        "m\030\001 \002(\010\022\021\n\tstream_id\030\002 \001(\t\022\027\n\017expiration" +
        "_time\030\003 \001(\005\022\030\n\020last_enable_time\030\004 \001(\003\022\025\n" +
        "\rcolumn_to_get\030\005 \003(\t\"\226\001\n\020SSESpecificatio" +
        "n\022\016\n\006enable\030\001 \002(\010\022P\n\010key_type\030\002 \001(\0162>.co" +
        "m.alicloud.openservices.tablestore.core." +
        "protocol.SSEKeyType\022\016\n\006key_id\030\003 \001(\014\022\020\n\010r" +
        "ole_arn\030\004 \001(\014\"\220\001\n\nSSEDetails\022\016\n\006enable\030\001" +
        " \002(\010\022P\n\010key_type\030\002 \001(\0162>.com.alicloud.op" +
        "enservices.tablestore.core.protocol.SSEK" +
        "eyType\022\016\n\006key_id\030\003 \001(\014\022\020\n\010role_arn\030\004 \001(\014" +
        "\"\241\005\n\022CreateTableRequest\022Q\n\ntable_meta\030\001 " +
        "\002(\0132=.com.alicloud.openservices.tablesto" +
        "re.core.protocol.TableMeta\022c\n\023reserved_t" +
        "hroughput\030\002 \002(\0132F.com.alicloud.openservi" +
        "ces.tablestore.core.protocol.ReservedThr" +
        "oughput\022W\n\rtable_options\030\003 \001(\0132@.com.ali" +
        "cloud.openservices.tablestore.core.proto" +
        "col.TableOptions\022V\n\npartitions\030\004 \003(\0132B.c" +
        "om.alicloud.openservices.tablestore.core" +
        ".protocol.PartitionRange\022\\\n\013stream_spec\030" +
        "\005 \001(\0132G.com.alicloud.openservices.tables" +
        "tore.core.protocol.StreamSpecification\022V" +
        "\n\010sse_spec\030\006 \001(\0132D.com.alicloud.openserv" +
        "ices.tablestore.core.protocol.SSESpecifi" +
        "cation\022R\n\013index_metas\030\007 \003(\0132=.com.aliclo" +
        "ud.openservices.tablestore.core.protocol" +
        ".IndexMeta\022\030\n\020enable_local_txn\030\010 \001(\010\"\025\n\023" +
        "CreateTableResponse\"\233\001\n\022CreateIndexReque" +
        "st\022\027\n\017main_table_name\030\001 \002(\t\022Q\n\nindex_met" +
        "a\030\002 \002(\0132=.com.alicloud.openservices.tabl" +
        "estore.core.protocol.IndexMeta\022\031\n\021includ" +
        "e_base_data\030\003 \001(\010\"\025\n\023CreateIndexResponse" +
        "\"?\n\020DropIndexRequest\022\027\n\017main_table_name\030" +
        "\001 \002(\t\022\022\n\nindex_name\030\002 \002(\t\"\023\n\021DropIndexRe" +
        "sponse\"\207\001\n\027AddDefinedColumnRequest\022\022\n\nta" +
        "ble_name\030\001 \002(\t\022X\n\007columns\030\002 \003(\0132G.com.al" +
        "icloud.openservices.tablestore.core.prot" +
        "ocol.DefinedColumnSchema\"\032\n\030AddDefinedCo" +
        "lumnResponse\"A\n\032DeleteDefinedColumnReque" +
        "st\022\022\n\ntable_name\030\001 \002(\t\022\017\n\007columns\030\002 \003(\t\"" +
        "\035\n\033DeleteDefinedColumnResponse\"\304\002\n\022Updat" +
        "eTableRequest\022\022\n\ntable_name\030\001 \002(\t\022c\n\023res" +
        "erved_throughput\030\002 \001(\0132F.com.alicloud.op" +
        "enservices.tablestore.core.protocol.Rese" +
        "rvedThroughput\022W\n\rtable_options\030\003 \001(\0132@." +
        "com.alicloud.openservices.tablestore.cor" +
        "e.protocol.TableOptions\022\\\n\013stream_spec\030\004" +
        " \001(\0132G.com.alicloud.openservices.tablest" +
        "ore.core.protocol.StreamSpecification\"\275\002" +
        "\n\023UpdateTableResponse\022r\n\033reserved_throug" +
        "hput_details\030\001 \002(\0132M.com.alicloud.opense" +
        "rvices.tablestore.core.protocol.Reserved" +
        "ThroughputDetails\022W\n\rtable_options\030\002 \002(\013" +
        "2@.com.alicloud.openservices.tablestore." +
        "core.protocol.TableOptions\022Y\n\016stream_det" +
        "ails\030\003 \001(\0132A.com.alicloud.openservices.t" +
        "ablestore.core.protocol.StreamDetails\"*\n" +
        "\024DescribeTableRequest\022\022\n\ntable_name\030\001 \002(" +
        "\t\"\350\004\n\025DescribeTableResponse\022Q\n\ntable_met" +
        "a\030\001 \002(\0132=.com.alicloud.openservices.tabl" +
        "estore.core.protocol.TableMeta\022r\n\033reserv" +
        "ed_throughput_details\030\002 \002(\0132M.com.aliclo" +
        "ud.openservices.tablestore.core.protocol" +
        ".ReservedThroughputDetails\022W\n\rtable_opti" +
        "ons\030\003 \002(\0132@.com.alicloud.openservices.ta" +
        "blestore.core.protocol.TableOptions\022Y\n\016s" +
        "tream_details\030\005 \001(\0132A.com.alicloud.opens" +
        "ervices.tablestore.core.protocol.StreamD" +
        "etails\022\024\n\014shard_splits\030\006 \003(\014\022S\n\013sse_deta" +
        "ils\030\007 \001(\0132>.com.alicloud.openservices.ta" +
        "blestore.core.protocol.SSEDetails\022R\n\013ind" +
        "ex_metas\030\010 \003(\0132=.com.alicloud.openservic" +
        "es.tablestore.core.protocol.IndexMeta\022\025\n" +
        "\rcreation_time\030\t \001(\003\"\022\n\020ListTableRequest" +
        "\"(\n\021ListTableResponse\022\023\n\013table_names\030\001 \003" +
        "(\t\"(\n\022DeleteTableRequest\022\022\n\ntable_name\030\001" +
        " \002(\t\"\025\n\023DeleteTableResponse\"&\n\020LoadTable" +
        "Request\022\022\n\ntable_name\030\001 \002(\t\"\023\n\021LoadTable" +
        "Response\"(\n\022UnloadTableRequest\022\022\n\ntable_" +
        "name\030\001 \002(\t\"\025\n\023UnloadTableResponse\"H\n\tTim" +
        "eRange\022\022\n\nstart_time\030\001 \001(\003\022\020\n\010end_time\030\002" +
        " \001(\003\022\025\n\rspecific_time\030\003 \001(\003\"\201\001\n\rReturnCo" +
        "ntent\022S\n\013return_type\030\001 \001(\0162>.com.aliclou" +
        "d.openservices.tablestore.core.protocol." +
        "ReturnType\022\033\n\023return_column_names\030\002 \003(\t\"" +
        "\232\002\n\rGetRowRequest\022\022\n\ntable_name\030\001 \002(\t\022\023\n" +
        "\013primary_key\030\002 \002(\014\022\026\n\016columns_to_get\030\003 \003" +
        "(\t\022Q\n\ntime_range\030\004 \001(\0132=.com.alicloud.op" +
        "enservices.tablestore.core.protocol.Time" +
        "Range\022\024\n\014max_versions\030\005 \001(\005\022\016\n\006filter\030\007 " +
        "\001(\014\022\024\n\014start_column\030\010 \001(\t\022\022\n\nend_column\030" +
        "\t \001(\t\022\r\n\005token\030\n \001(\014\022\026\n\016transaction_id\030\013" +
        " \001(\t\"\211\001\n\016GetRowResponse\022V\n\010consumed\030\001 \002(" +
        "\0132D.com.alicloud.openservices.tablestore" +
        ".core.protocol.ConsumedCapacity\022\013\n\003row\030\002" +
        " \002(\014\022\022\n\nnext_token\030\003 \001(\014\"\377\001\n\020UpdateRowRe" +
        "quest\022\022\n\ntable_name\030\001 \002(\t\022\022\n\nrow_change\030" +
        "\002 \002(\014\022P\n\tcondition\030\003 \002(\0132=.com.alicloud." +
        "openservices.tablestore.core.protocol.Co" +
        "ndition\022Y\n\016return_content\030\004 \001(\0132A.com.al" +
        "icloud.openservices.tablestore.core.prot" +
        "ocol.ReturnContent\022\026\n\016transaction_id\030\005 \001" +
        "(\t\"x\n\021UpdateRowResponse\022V\n\010consumed\030\001 \002(" +
        "\0132D.com.alicloud.openservices.tablestore" +
        ".core.protocol.ConsumedCapacity\022\013\n\003row\030\002" +
        " \001(\014\"\365\001\n\rPutRowRequest\022\022\n\ntable_name\030\001 \002" +
        "(\t\022\013\n\003row\030\002 \002(\014\022P\n\tcondition\030\003 \002(\0132=.com" +
        ".alicloud.openservices.tablestore.core.p" +
        "rotocol.Condition\022Y\n\016return_content\030\004 \001(" +
        "\0132A.com.alicloud.openservices.tablestore" +
        ".core.protocol.ReturnContent\022\026\n\016transact" +
        "ion_id\030\005 \001(\t\"u\n\016PutRowResponse\022V\n\010consum" +
        "ed\030\001 \002(\0132D.com.alicloud.openservices.tab" +
        "lestore.core.protocol.ConsumedCapacity\022\013" +
        "\n\003row\030\002 \001(\014\"\200\002\n\020DeleteRowRequest\022\022\n\ntabl" +
        "e_name\030\001 \002(\t\022\023\n\013primary_key\030\002 \002(\014\022P\n\tcon" +
        "dition\030\003 \002(\0132=.com.alicloud.openservices" +
        ".tablestore.core.protocol.Condition\022Y\n\016r" +
        "eturn_content\030\004 \001(\0132A.com.alicloud.opens" +
        "ervices.tablestore.core.protocol.ReturnC" +
        "ontent\022\026\n\016transaction_id\030\005 \001(\t\"x\n\021Delete" +
        "RowResponse\022V\n\010consumed\030\001 \002(\0132D.com.alic" +
        "loud.openservices.tablestore.core.protoc" +
        "ol.ConsumedCapacity\022\013\n\003row\030\002 \001(\014\"\216\002\n\031Tab" +
        "leInBatchGetRowRequest\022\022\n\ntable_name\030\001 \002" +
        "(\t\022\023\n\013primary_key\030\002 \003(\014\022\r\n\005token\030\003 \003(\014\022\026" +
        "\n\016columns_to_get\030\004 \003(\t\022Q\n\ntime_range\030\005 \001" +
        "(\0132=.com.alicloud.openservices.tablestor" +
        "e.core.protocol.TimeRange\022\024\n\014max_version" +
        "s\030\006 \001(\005\022\016\n\006filter\030\010 \001(\014\022\024\n\014start_column\030" +
        "\t \001(\t\022\022\n\nend_column\030\n \001(\t\"s\n\022BatchGetRow" +
        "Request\022]\n\006tables\030\001 \003(\0132M.com.alicloud.o" +
        "penservices.tablestore.core.protocol.Tab" +
        "leInBatchGetRowRequest\"\354\001\n\030RowInBatchGet" +
        "RowResponse\022\r\n\005is_ok\030\001 \002(\010\022H\n\005error\030\002 \001(" +
        "\01329.com.alicloud.openservices.tablestore" +
        ".core.protocol.Error\022V\n\010consumed\030\003 \001(\0132D" +
        ".com.alicloud.openservices.tablestore.co" +
        "re.protocol.ConsumedCapacity\022\013\n\003row\030\004 \001(" +
        "\014\022\022\n\nnext_token\030\005 \001(\014\"\214\001\n\032TableInBatchGe" +
        "tRowResponse\022\022\n\ntable_name\030\001 \002(\t\022Z\n\004rows" +
        "\030\002 \003(\0132L.com.alicloud.openservices.table" +
        "store.core.protocol.RowInBatchGetRowResp" +
        "onse\"u\n\023BatchGetRowResponse\022^\n\006tables\030\001 " +
        "\003(\0132N.com.alicloud.openservices.tablesto" +
        "re.core.protocol.TableInBatchGetRowRespo" +
        "nse\"\255\002\n\031RowInBatchWriteRowRequest\022O\n\004typ" +
        "e\030\001 \002(\0162A.com.alicloud.openservices.tabl" +
        "estore.core.protocol.OperationType\022\022\n\nro" +
        "w_change\030\002 \002(\014\022P\n\tcondition\030\003 \002(\0132=.com." +
        "alicloud.openservices.tablestore.core.pr" +
        "otocol.Condition\022Y\n\016return_content\030\004 \001(\013" +
        "2A.com.alicloud.openservices.tablestore." +
        "core.protocol.ReturnContent\"\216\001\n\033TableInB" +
        "atchWriteRowRequest\022\022\n\ntable_name\030\001 \002(\t\022" +
        "[\n\004rows\030\002 \003(\0132M.com.alicloud.openservice" +
        "s.tablestore.core.protocol.RowInBatchWri" +
        "teRowRequest\"\242\001\n\024BatchWriteRowRequest\022_\n" +
        "\006tables\030\001 \003(\0132O.com.alicloud.openservice" +
        "s.tablestore.core.protocol.TableInBatchW" +
        "riteRowRequest\022\026\n\016transaction_id\030\002 \001(\t\022\021" +
        "\n\tis_atomic\030\003 \001(\010\"\332\001\n\032RowInBatchWriteRow" +
        "Response\022\r\n\005is_ok\030\001 \002(\010\022H\n\005error\030\002 \001(\01329" +
        ".com.alicloud.openservices.tablestore.co" +
        "re.protocol.Error\022V\n\010consumed\030\003 \001(\0132D.co" +
        "m.alicloud.openservices.tablestore.core." +
        "protocol.ConsumedCapacity\022\013\n\003row\030\004 \001(\014\"\220" +
        "\001\n\034TableInBatchWriteRowResponse\022\022\n\ntable" +
        "_name\030\001 \002(\t\022\\\n\004rows\030\002 \003(\0132N.com.alicloud" +
        ".openservices.tablestore.core.protocol.R" +
        "owInBatchWriteRowResponse\"y\n\025BatchWriteR" +
        "owResponse\022`\n\006tables\030\001 \003(\0132P.com.aliclou" +
        "d.openservices.tablestore.core.protocol." +
        "TableInBatchWriteRowResponse\"\260\003\n\017GetRang" +
        "eRequest\022\022\n\ntable_name\030\001 \002(\t\022P\n\tdirectio" +
        "n\030\002 \002(\0162=.com.alicloud.openservices.tabl" +
        "estore.core.protocol.Direction\022\026\n\016column" +
        "s_to_get\030\003 \003(\t\022Q\n\ntime_range\030\004 \001(\0132=.com" +
        ".alicloud.openservices.tablestore.core.p" +
        "rotocol.TimeRange\022\024\n\014max_versions\030\005 \001(\005\022" +
        "\r\n\005limit\030\006 \001(\005\022#\n\033inclusive_start_primar" +
        "y_key\030\007 \002(\014\022!\n\031exclusive_end_primary_key" +
        "\030\010 \002(\014\022\016\n\006filter\030\n \001(\014\022\024\n\014start_column\030\013" +
        " \001(\t\022\022\n\nend_column\030\014 \001(\t\022\r\n\005token\030\r \001(\014\022" +
        "\026\n\016transaction_id\030\016 \001(\t\"\254\001\n\020GetRangeResp" +
        "onse\022V\n\010consumed\030\001 \002(\0132D.com.alicloud.op" +
        "enservices.tablestore.core.protocol.Cons" +
        "umedCapacity\022\014\n\004rows\030\002 \002(\014\022\036\n\026next_start" +
        "_primary_key\030\003 \001(\014\022\022\n\nnext_token\030\004 \001(\014\"?" +
        "\n\034StartLocalTransactionRequest\022\022\n\ntable_" +
        "name\030\001 \002(\t\022\013\n\003key\030\002 \002(\014\"7\n\035StartLocalTra" +
        "nsactionResponse\022\026\n\016transaction_id\030\001 \002(\t" +
        "\"2\n\030CommitTransactionRequest\022\026\n\016transact" +
        "ion_id\030\001 \002(\t\"\033\n\031CommitTransactionRespons" +
        "e\"1\n\027AbortTransactionRequest\022\026\n\016transact" +
        "ion_id\030\001 \002(\t\"\032\n\030AbortTransactionResponse" +
        "\"\'\n\021ListStreamRequest\022\022\n\ntable_name\030\001 \001(" +
        "\t\"F\n\006Stream\022\021\n\tstream_id\030\001 \002(\t\022\022\n\ntable_" +
        "name\030\002 \002(\t\022\025\n\rcreation_time\030\003 \002(\003\"a\n\022Lis" +
        "tStreamResponse\022K\n\007streams\030\001 \003(\0132:.com.a" +
        "licloud.openservices.tablestore.core.pro" +
        "tocol.Stream\"M\n\013StreamShard\022\020\n\010shard_id\030" +
        "\001 \002(\t\022\021\n\tparent_id\030\002 \001(\t\022\031\n\021parent_sibli" +
        "ng_id\030\003 \001(\t\"\210\001\n\025DescribeStreamRequest\022\021\n" +
        "\tstream_id\030\001 \002(\t\022 \n\030inclusive_start_shar" +
        "d_id\030\002 \001(\t\022\023\n\013shard_limit\030\003 \001(\005\022%\n\035suppo" +
        "rt_timeseries_data_table\030\004 \001(\010\"\322\002\n\026Descr" +
        "ibeStreamResponse\022\021\n\tstream_id\030\001 \002(\t\022\027\n\017" +
        "expiration_time\030\002 \002(\005\022\022\n\ntable_name\030\003 \002(" +
        "\t\022\025\n\rcreation_time\030\004 \002(\003\022W\n\rstream_statu" +
        "s\030\005 \002(\0162@.com.alicloud.openservices.tabl" +
        "estore.core.protocol.StreamStatus\022O\n\006sha" +
        "rds\030\006 \003(\0132?.com.alicloud.openservices.ta" +
        "blestore.core.protocol.StreamShard\022\025\n\rne" +
        "xt_shard_id\030\007 \001(\t\022 \n\030is_timeseries_data_" +
        "table\030\010 \001(\010\"`\n\027GetShardIteratorRequest\022\021" +
        "\n\tstream_id\030\001 \002(\t\022\020\n\010shard_id\030\002 \002(\t\022\021\n\tt" +
        "imestamp\030\003 \001(\003\022\r\n\005token\030\004 \001(\t\"F\n\030GetShar" +
        "dIteratorResponse\022\026\n\016shard_iterator\030\001 \002(" +
        "\t\022\022\n\nnext_token\030\002 \001(\t\"S\n\026GetStreamRecord" +
        "Request\022\026\n\016shard_iterator\030\001 \002(\t\022\r\n\005limit" +
        "\030\002 \001(\005\022\022\n\ntable_name\030\003 \001(\t\"\246\003\n\027GetStream" +
        "RecordResponse\022p\n\016stream_records\030\001 \003(\0132X" +
        ".com.alicloud.openservices.tablestore.co" +
        "re.protocol.GetStreamRecordResponse.Stre" +
        "amRecord\022\033\n\023next_shard_iterator\030\002 \001(\t\022V\n" +
        "\010consumed\030\003 \001(\0132D.com.alicloud.openservi" +
        "ces.tablestore.core.protocol.ConsumedCap" +
        "acity\022\027\n\017may_more_record\030\004 \001(\010\032\212\001\n\014Strea" +
        "mRecord\022S\n\013action_type\030\001 \002(\0162>.com.alicl" +
        "oud.openservices.tablestore.core.protoco" +
        "l.ActionType\022\016\n\006record\030\002 \002(\014\022\025\n\rorigin_r" +
        "ecord\030\003 \001(\014\"\205\001\n\037ComputeSplitPointsBySize" +
        "Request\022\022\n\ntable_name\030\001 \002(\t\022\022\n\nsplit_siz" +
        "e\030\002 \002(\003\022\037\n\027split_size_unit_in_byte\030\003 \001(\003" +
        "\022\031\n\021split_point_limit\030\004 \001(\005\"\220\003\n ComputeS" +
        "plitPointsBySizeResponse\022V\n\010consumed\030\001 \002" +
        "(\0132D.com.alicloud.openservices.tablestor" +
        "e.core.protocol.ConsumedCapacity\022T\n\006sche" +
        "ma\030\002 \003(\0132D.com.alicloud.openservices.tab" +
        "lestore.core.protocol.PrimaryKeySchema\022\024" +
        "\n\014split_points\030\003 \003(\014\022u\n\tlocations\030\004 \003(\0132" +
        "b.com.alicloud.openservices.tablestore.c" +
        "ore.protocol.ComputeSplitPointsBySizeRes" +
        "ponse.SplitLocation\0321\n\rSplitLocation\022\020\n\010" +
        "location\030\001 \002(\t\022\016\n\006repeat\030\002 \002(\022\"\217\002\n\021BulkE" +
        "xportRequest\022\022\n\ntable_name\030\001 \002(\t\022\026\n\016colu" +
        "mns_to_get\030\002 \003(\t\022#\n\033inclusive_start_prim" +
        "ary_key\030\003 \002(\014\022!\n\031exclusive_end_primary_k" +
        "ey\030\004 \002(\014\022\016\n\006filter\030\005 \001(\014\022v\n\024data_block_t" +
        "ype_hint\030\006 \001(\0162A.com.alicloud.openservic" +
        "es.tablestore.core.protocol.DataBlockTyp" +
        "e:\025DBT_SIMPLE_ROW_MATRIX\"\366\001\n\022BulkExportR" +
        "esponse\022V\n\010consumed\030\001 \002(\0132D.com.alicloud" +
        ".openservices.tablestore.core.protocol.C" +
        "onsumedCapacity\022\014\n\004rows\030\002 \002(\014\022\036\n\026next_st" +
        "art_primary_key\030\003 \001(\014\022Z\n\017data_block_type" +
        "\030\004 \001(\0162A.com.alicloud.openservices.table" +
        "store.core.protocol.DataBlockType\"\201\001\n\021Bu" +
        "lkImportRequest\022\022\n\ntable_name\030\001 \002(\t\022X\n\004r" +
        "ows\030\002 \003(\0132J.com.alicloud.openservices.ta" +
        "blestore.core.protocol.RowInBulkImportRe" +
        "quest\"}\n\026RowInBulkImportRequest\022O\n\004type\030" +
        "\001 \002(\0162A.com.alicloud.openservices.tables" +
        "tore.core.protocol.OperationType\022\022\n\nrow_" +
        "change\030\002 \002(\014\"\203\001\n\022BulkImportResponse\022\022\n\nt" +
        "able_name\030\001 \002(\t\022Y\n\004rows\030\002 \003(\0132K.com.alic" +
        "loud.openservices.tablestore.core.protoc" +
        "ol.RowInBulkImportResponse\"\312\001\n\027RowInBulk" +
        "ImportResponse\022\r\n\005is_ok\030\001 \002(\010\022H\n\005error\030\002" +
        " \001(\01329.com.alicloud.openservices.tablest" +
        "ore.core.protocol.Error\022V\n\010consumed\030\003 \001(" +
        "\0132D.com.alicloud.openservices.tablestore" +
        ".core.protocol.ConsumedCapacity\"\235\001\n\024Comp" +
        "uteSplitsRequest\022\022\n\ntable_name\030\001 \001(\t\022q\n\033" +
        "search_index_splits_options\030\002 \001(\0132L.com." +
        "alicloud.openservices.tablestore.core.pr" +
        "otocol.SearchIndexSplitsOptions\".\n\030Searc" +
        "hIndexSplitsOptions\022\022\n\nindex_name\030\001 \001(\t\"" +
        "@\n\025ComputeSplitsResponse\022\022\n\nsession_id\030\001" +
        " \001(\014\022\023\n\013splits_size\030\002 \001(\005\"\243\001\n\017SQLQueryRe" +
        "quest\022\r\n\005query\030\001 \002(\t\022V\n\007version\030\002 \001(\0162E." +
        "com.alicloud.openservices.tablestore.cor" +
        "e.protocol.SQLPayloadVersion\022\023\n\013sql_vers" +
        "ion\030\003 \001(\003\022\024\n\014search_token\030\005 \001(\t\"\350\001\n\025Tabl" +
        "eConsumedCapacity\022\022\n\ntable_name\030\001 \001(\t\022V\n" +
        "\010consumed\030\002 \001(\0132D.com.alicloud.openservi" +
        "ces.tablestore.core.protocol.ConsumedCap" +
        "acity\022c\n\023reserved_throughput\030\003 \001(\0132F.com" +
        ".alicloud.openservices.tablestore.core.p" +
        "rotocol.ReservedThroughput\"\304\002\n\020SQLQueryR" +
        "esponse\022[\n\010consumes\030\001 \003(\0132I.com.alicloud" +
        ".openservices.tablestore.core.protocol.T" +
        "ableConsumedCapacity\022\014\n\004rows\030\002 \001(\014\022V\n\007ve" +
        "rsion\030\003 \001(\0162E.com.alicloud.openservices." +
        "tablestore.core.protocol.SQLPayloadVersi" +
        "on\022R\n\004type\030\004 \001(\0162D.com.alicloud.openserv" +
        "ices.tablestore.core.protocol.SQLStateme" +
        "ntType\022\031\n\021next_search_token\030\010 \001(\t*5\n\016Pri" +
        "maryKeyType\022\013\n\007INTEGER\020\001\022\n\n\006STRING\020\002\022\n\n\006" +
        "BINARY\020\003*c\n\021DefinedColumnType\022\017\n\013DCT_INT" +
        "EGER\020\001\022\016\n\nDCT_DOUBLE\020\002\022\017\n\013DCT_BOOLEAN\020\003\022" +
        "\016\n\nDCT_STRING\020\004\022\014\n\010DCT_BLOB\020\007*&\n\020Primary" +
        "KeyOption\022\022\n\016AUTO_INCREMENT\020\001*:\n\017IndexUp" +
        "dateMode\022\023\n\017IUM_ASYNC_INDEX\020\000\022\022\n\016IUM_SYN" +
        "C_INDEX\020\001*4\n\tIndexType\022\023\n\017IT_GLOBAL_INDE" +
        "X\020\000\022\022\n\016IT_LOCAL_INDEX\020\001*=\n\016IndexSyncPhas" +
        "e\022\017\n\013ISP_INVALID\020\000\022\014\n\010ISP_FULL\020\001\022\014\n\010ISP_" +
        "INCR\020\002*M\n\027RowExistenceExpectation\022\n\n\006IGN" +
        "ORE\020\000\022\020\n\014EXPECT_EXIST\020\001\022\024\n\020EXPECT_NOT_EX" +
        "IST\020\002*/\n\nSSEKeyType\022\023\n\017SSE_KMS_SERVICE\020\001" +
        "\022\014\n\010SSE_BYOK\020\002*9\n\nReturnType\022\013\n\007RT_NONE\020" +
        "\000\022\t\n\005RT_PK\020\001\022\023\n\017RT_AFTER_MODIFY\020\002*0\n\rOpe" +
        "rationType\022\007\n\003PUT\020\001\022\n\n\006UPDATE\020\002\022\n\n\006DELET" +
        "E\020\003*&\n\tDirection\022\013\n\007FORWARD\020\000\022\014\n\010BACKWAR" +
        "D\020\001*6\n\014StreamStatus\022\023\n\017STREAM_ENABLING\020\001" +
        "\022\021\n\rSTREAM_ACTIVE\020\002*9\n\nActionType\022\013\n\007PUT" +
        "_ROW\020\001\022\016\n\nUPDATE_ROW\020\002\022\016\n\nDELETE_ROW\020\003*@" +
        "\n\rDataBlockType\022\024\n\020DBT_PLAIN_BUFFER\020\000\022\031\n" +
        "\025DBT_SIMPLE_ROW_MATRIX\020\001*?\n\021SQLPayloadVe" +
        "rsion\022\024\n\020SQL_PLAIN_BUFFER\020\001\022\024\n\020SQL_FLAT_" +
        "BUFFERS\020\002*\215\001\n\020SQLStatementType\022\016\n\nSQL_SE" +
        "LECT\020\001\022\024\n\020SQL_CREATE_TABLE\020\002\022\022\n\016SQL_SHOW" +
        "_TABLE\020\003\022\026\n\022SQL_DESCRIBE_TABLE\020\004\022\022\n\016SQL_" +
        "DROP_TABLE\020\005\022\023\n\017SQL_ALTER_TABLE\020\006"
      };
      descriptor = com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.FileDescriptor
        .internalBuildGeneratedFileFrom(descriptorData,
          new com.aliyun.ots.thirdparty.com.google.protobuf.Descriptors.FileDescriptor[] {
          });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor =
        getDescriptor().getMessageTypes().get(0);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_Error_descriptor,
          new java.lang.String[] { "Code", "Message", "AccessDeniedDetail", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor =
        getDescriptor().getMessageTypes().get(1);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_AccessDeniedDetail_descriptor,
          new java.lang.String[] { "AuthAction", "AuthPrincipalType", "AuthPrincipalOwnerId", "AuthPrincipalDisplayName", "PolicyType", "NoPermissionType", "EncodedDiagnosticMessage", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor =
        getDescriptor().getMessageTypes().get(2);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_PrimaryKeySchema_descriptor,
          new java.lang.String[] { "Name", "Type", "Option", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor =
        getDescriptor().getMessageTypes().get(3);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_PartitionRange_descriptor,
          new java.lang.String[] { "Begin", "End", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor =
        getDescriptor().getMessageTypes().get(4);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DefinedColumnSchema_descriptor,
          new java.lang.String[] { "Name", "Type", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor =
        getDescriptor().getMessageTypes().get(5);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableOptions_descriptor,
          new java.lang.String[] { "TimeToLive", "MaxVersions", "DeviationCellVersionInSec", "AllowUpdate", "UpdateFullRow", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor =
        getDescriptor().getMessageTypes().get(6);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_IndexMeta_descriptor,
          new java.lang.String[] { "Name", "PrimaryKey", "DefinedColumn", "IndexUpdateMode", "IndexType", "IndexSyncPhase", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor =
        getDescriptor().getMessageTypes().get(7);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableMeta_descriptor,
          new java.lang.String[] { "TableName", "PrimaryKey", "DefinedColumn", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor =
        getDescriptor().getMessageTypes().get(8);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_Condition_descriptor,
          new java.lang.String[] { "RowExistence", "ColumnCondition", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor =
        getDescriptor().getMessageTypes().get(9);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityUnit_descriptor,
          new java.lang.String[] { "Read", "Write", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor =
        getDescriptor().getMessageTypes().get(10);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CapacityDataSize_descriptor,
          new java.lang.String[] { "ReadSize", "WriteSize", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor =
        getDescriptor().getMessageTypes().get(11);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughputDetails_descriptor,
          new java.lang.String[] { "CapacityUnit", "LastIncreaseTime", "LastDecreaseTime", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor =
        getDescriptor().getMessageTypes().get(12);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ReservedThroughput_descriptor,
          new java.lang.String[] { "CapacityUnit", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor =
        getDescriptor().getMessageTypes().get(13);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ConsumedCapacity_descriptor,
          new java.lang.String[] { "CapacityUnit", "CapacityDataSize", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor =
        getDescriptor().getMessageTypes().get(14);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamSpecification_descriptor,
          new java.lang.String[] { "EnableStream", "ExpirationTime", "ColumnsToGet", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor =
        getDescriptor().getMessageTypes().get(15);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamDetails_descriptor,
          new java.lang.String[] { "EnableStream", "StreamId", "ExpirationTime", "LastEnableTime", "ColumnToGet", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor =
        getDescriptor().getMessageTypes().get(16);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_SSESpecification_descriptor,
          new java.lang.String[] { "Enable", "KeyType", "KeyId", "RoleArn", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor =
        getDescriptor().getMessageTypes().get(17);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_SSEDetails_descriptor,
          new java.lang.String[] { "Enable", "KeyType", "KeyId", "RoleArn", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(18);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableRequest_descriptor,
          new java.lang.String[] { "TableMeta", "ReservedThroughput", "TableOptions", "Partitions", "StreamSpec", "SseSpec", "IndexMetas", "EnableLocalTxn", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(19);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateTableResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor =
        getDescriptor().getMessageTypes().get(20);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexRequest_descriptor,
          new java.lang.String[] { "MainTableName", "IndexMeta", "IncludeBaseData", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor =
        getDescriptor().getMessageTypes().get(21);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CreateIndexResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor =
        getDescriptor().getMessageTypes().get(22);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexRequest_descriptor,
          new java.lang.String[] { "MainTableName", "IndexName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor =
        getDescriptor().getMessageTypes().get(23);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DropIndexResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor =
        getDescriptor().getMessageTypes().get(24);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnRequest_descriptor,
          new java.lang.String[] { "TableName", "Columns", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor =
        getDescriptor().getMessageTypes().get(25);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_AddDefinedColumnResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor =
        getDescriptor().getMessageTypes().get(26);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnRequest_descriptor,
          new java.lang.String[] { "TableName", "Columns", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor =
        getDescriptor().getMessageTypes().get(27);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteDefinedColumnResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(28);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableRequest_descriptor,
          new java.lang.String[] { "TableName", "ReservedThroughput", "TableOptions", "StreamSpec", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(29);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateTableResponse_descriptor,
          new java.lang.String[] { "ReservedThroughputDetails", "TableOptions", "StreamDetails", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(30);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableRequest_descriptor,
          new java.lang.String[] { "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(31);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeTableResponse_descriptor,
          new java.lang.String[] { "TableMeta", "ReservedThroughputDetails", "TableOptions", "StreamDetails", "ShardSplits", "SseDetails", "IndexMetas", "CreationTime", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(32);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableRequest_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(33);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ListTableResponse_descriptor,
          new java.lang.String[] { "TableNames", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(34);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableRequest_descriptor,
          new java.lang.String[] { "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(35);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteTableResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(36);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableRequest_descriptor,
          new java.lang.String[] { "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(37);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_LoadTableResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor =
        getDescriptor().getMessageTypes().get(38);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableRequest_descriptor,
          new java.lang.String[] { "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor =
        getDescriptor().getMessageTypes().get(39);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UnloadTableResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor =
        getDescriptor().getMessageTypes().get(40);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TimeRange_descriptor,
          new java.lang.String[] { "StartTime", "EndTime", "SpecificTime", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor =
        getDescriptor().getMessageTypes().get(41);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ReturnContent_descriptor,
          new java.lang.String[] { "ReturnType", "ReturnColumnNames", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(42);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowRequest_descriptor,
          new java.lang.String[] { "TableName", "PrimaryKey", "ColumnsToGet", "TimeRange", "MaxVersions", "Filter", "StartColumn", "EndColumn", "Token", "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(43);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRowResponse_descriptor,
          new java.lang.String[] { "Consumed", "Row", "NextToken", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(44);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowRequest_descriptor,
          new java.lang.String[] { "TableName", "RowChange", "Condition", "ReturnContent", "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(45);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_UpdateRowResponse_descriptor,
          new java.lang.String[] { "Consumed", "Row", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(46);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowRequest_descriptor,
          new java.lang.String[] { "TableName", "Row", "Condition", "ReturnContent", "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(47);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_PutRowResponse_descriptor,
          new java.lang.String[] { "Consumed", "Row", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(48);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowRequest_descriptor,
          new java.lang.String[] { "TableName", "PrimaryKey", "Condition", "ReturnContent", "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(49);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DeleteRowResponse_descriptor,
          new java.lang.String[] { "Consumed", "Row", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(50);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowRequest_descriptor,
          new java.lang.String[] { "TableName", "PrimaryKey", "Token", "ColumnsToGet", "TimeRange", "MaxVersions", "Filter", "StartColumn", "EndColumn", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(51);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowRequest_descriptor,
          new java.lang.String[] { "Tables", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(52);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchGetRowResponse_descriptor,
          new java.lang.String[] { "IsOk", "Error", "Consumed", "Row", "NextToken", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(53);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchGetRowResponse_descriptor,
          new java.lang.String[] { "TableName", "Rows", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(54);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchGetRowResponse_descriptor,
          new java.lang.String[] { "Tables", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(55);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowRequest_descriptor,
          new java.lang.String[] { "Type", "RowChange", "Condition", "ReturnContent", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(56);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowRequest_descriptor,
          new java.lang.String[] { "TableName", "Rows", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor =
        getDescriptor().getMessageTypes().get(57);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowRequest_descriptor,
          new java.lang.String[] { "Tables", "TransactionId", "IsAtomic", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(58);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBatchWriteRowResponse_descriptor,
          new java.lang.String[] { "IsOk", "Error", "Consumed", "Row", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(59);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableInBatchWriteRowResponse_descriptor,
          new java.lang.String[] { "TableName", "Rows", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor =
        getDescriptor().getMessageTypes().get(60);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BatchWriteRowResponse_descriptor,
          new java.lang.String[] { "Tables", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor =
        getDescriptor().getMessageTypes().get(61);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeRequest_descriptor,
          new java.lang.String[] { "TableName", "Direction", "ColumnsToGet", "TimeRange", "MaxVersions", "Limit", "InclusiveStartPrimaryKey", "ExclusiveEndPrimaryKey", "Filter", "StartColumn", "EndColumn", "Token", "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor =
        getDescriptor().getMessageTypes().get(62);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetRangeResponse_descriptor,
          new java.lang.String[] { "Consumed", "Rows", "NextStartPrimaryKey", "NextToken", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor =
        getDescriptor().getMessageTypes().get(63);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionRequest_descriptor,
          new java.lang.String[] { "TableName", "Key", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor =
        getDescriptor().getMessageTypes().get(64);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_StartLocalTransactionResponse_descriptor,
          new java.lang.String[] { "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor =
        getDescriptor().getMessageTypes().get(65);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionRequest_descriptor,
          new java.lang.String[] { "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor =
        getDescriptor().getMessageTypes().get(66);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_CommitTransactionResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor =
        getDescriptor().getMessageTypes().get(67);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionRequest_descriptor,
          new java.lang.String[] { "TransactionId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor =
        getDescriptor().getMessageTypes().get(68);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_AbortTransactionResponse_descriptor,
          new java.lang.String[] { });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor =
        getDescriptor().getMessageTypes().get(69);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamRequest_descriptor,
          new java.lang.String[] { "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor =
        getDescriptor().getMessageTypes().get(70);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_Stream_descriptor,
          new java.lang.String[] { "StreamId", "TableName", "CreationTime", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor =
        getDescriptor().getMessageTypes().get(71);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ListStreamResponse_descriptor,
          new java.lang.String[] { "Streams", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor =
        getDescriptor().getMessageTypes().get(72);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_StreamShard_descriptor,
          new java.lang.String[] { "ShardId", "ParentId", "ParentSiblingId", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor =
        getDescriptor().getMessageTypes().get(73);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamRequest_descriptor,
          new java.lang.String[] { "StreamId", "InclusiveStartShardId", "ShardLimit", "SupportTimeseriesDataTable", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor =
        getDescriptor().getMessageTypes().get(74);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_DescribeStreamResponse_descriptor,
          new java.lang.String[] { "StreamId", "ExpirationTime", "TableName", "CreationTime", "StreamStatus", "Shards", "NextShardId", "IsTimeseriesDataTable", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor =
        getDescriptor().getMessageTypes().get(75);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorRequest_descriptor,
          new java.lang.String[] { "StreamId", "ShardId", "Timestamp", "Token", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor =
        getDescriptor().getMessageTypes().get(76);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetShardIteratorResponse_descriptor,
          new java.lang.String[] { "ShardIterator", "NextToken", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor =
        getDescriptor().getMessageTypes().get(77);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordRequest_descriptor,
          new java.lang.String[] { "ShardIterator", "Limit", "TableName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor =
        getDescriptor().getMessageTypes().get(78);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor,
          new java.lang.String[] { "StreamRecords", "NextShardIterator", "Consumed", "MayMoreRecord", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor =
        internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_descriptor.getNestedTypes().get(0);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_GetStreamRecordResponse_StreamRecord_descriptor,
          new java.lang.String[] { "ActionType", "Record", "OriginRecord", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor =
        getDescriptor().getMessageTypes().get(79);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeRequest_descriptor,
          new java.lang.String[] { "TableName", "SplitSize", "SplitSizeUnitInByte", "SplitPointLimit", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor =
        getDescriptor().getMessageTypes().get(80);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor,
          new java.lang.String[] { "Consumed", "Schema", "SplitPoints", "Locations", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor =
        internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_descriptor.getNestedTypes().get(0);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitPointsBySizeResponse_SplitLocation_descriptor,
          new java.lang.String[] { "Location", "Repeat", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor =
        getDescriptor().getMessageTypes().get(81);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportRequest_descriptor,
          new java.lang.String[] { "TableName", "ColumnsToGet", "InclusiveStartPrimaryKey", "ExclusiveEndPrimaryKey", "Filter", "DataBlockTypeHint", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor =
        getDescriptor().getMessageTypes().get(82);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkExportResponse_descriptor,
          new java.lang.String[] { "Consumed", "Rows", "NextStartPrimaryKey", "DataBlockType", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor =
        getDescriptor().getMessageTypes().get(83);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportRequest_descriptor,
          new java.lang.String[] { "TableName", "Rows", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor =
        getDescriptor().getMessageTypes().get(84);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportRequest_descriptor,
          new java.lang.String[] { "Type", "RowChange", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor =
        getDescriptor().getMessageTypes().get(85);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_BulkImportResponse_descriptor,
          new java.lang.String[] { "TableName", "Rows", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor =
        getDescriptor().getMessageTypes().get(86);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_RowInBulkImportResponse_descriptor,
          new java.lang.String[] { "IsOk", "Error", "Consumed", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor =
        getDescriptor().getMessageTypes().get(87);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsRequest_descriptor,
          new java.lang.String[] { "TableName", "SearchIndexSplitsOptions", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor =
        getDescriptor().getMessageTypes().get(88);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_SearchIndexSplitsOptions_descriptor,
          new java.lang.String[] { "IndexName", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor =
        getDescriptor().getMessageTypes().get(89);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_ComputeSplitsResponse_descriptor,
          new java.lang.String[] { "SessionId", "SplitsSize", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor =
        getDescriptor().getMessageTypes().get(90);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryRequest_descriptor,
          new java.lang.String[] { "Query", "Version", "SqlVersion", "SearchToken", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor =
        getDescriptor().getMessageTypes().get(91);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_TableConsumedCapacity_descriptor,
          new java.lang.String[] { "TableName", "Consumed", "ReservedThroughput", });
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor =
        getDescriptor().getMessageTypes().get(92);
      internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_fieldAccessorTable = new
        com.aliyun.ots.thirdparty.com.google.protobuf.GeneratedMessage.FieldAccessorTable(
          internal_static_com_alicloud_openservices_tablestore_core_protocol_SQLQueryResponse_descriptor,
          new java.lang.String[] { "Consumes", "Rows", "Version", "Type", "NextSearchToken", });
      descriptor.resolveAllFeaturesImmutable();
    }
  
    // @@protoc_insertion_point(outer_class_scope)
  }
  