// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: P1001ZhanLingExp.proto

package pb.xiugou.x1.protobuf.promotion;

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

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface ZhanLingExpInfoRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpInfoRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();
  }
  /**
   * <pre>
   *战令数据
   * </pre>
   *
   * Protobuf type {@code pb.ZhanLingExpInfoRequest}
   */
  public  static final class ZhanLingExpInfoRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpInfoRequest)
      ZhanLingExpInfoRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpInfoRequest.newBuilder() to construct.
    private ZhanLingExpInfoRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpInfoRequest() {
    }

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

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

              typeId_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpInfoRequest.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100101;</code>
       */
      ID(2100101),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100101;</code>
       */
      public static final int ID_VALUE = 2100101;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100101: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpInfoRequest.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest) obj;

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

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

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     *战令数据
     * </pre>
     *
     * Protobuf type {@code pb.ZhanLingExpInfoRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpInfoRequest)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest(this);
        result.typeId_ = typeId_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpInfoRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpInfoRequest)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpInfoResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpInfoResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    int getLevel();

    /**
     * <pre>
     *经验值
     * </pre>
     *
     * <code>int64 exp = 3;</code>
     * @return The exp.
     */
    long getExp();

    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 4;</code>
     * @return The freeRewardLv.
     */
    int getFreeRewardLv();

    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 5;</code>
     * @return The premiumRewardLv.
     */
    int getPremiumRewardLv();

    /**
     * <pre>
     *是否已经购买高级通行证
     * </pre>
     *
     * <code>bool buy_premium = 6;</code>
     * @return The buyPremium.
     */
    boolean getBuyPremium();
  }
  /**
   * Protobuf type {@code pb.ZhanLingExpInfoResponse}
   */
  public  static final class ZhanLingExpInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpInfoResponse)
      ZhanLingExpInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpInfoResponse.newBuilder() to construct.
    private ZhanLingExpInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpInfoResponse() {
    }

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

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

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

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

              exp_ = input.readInt64();
              break;
            }
            case 32: {

              freeRewardLv_ = input.readInt32();
              break;
            }
            case 40: {

              premiumRewardLv_ = input.readInt32();
              break;
            }
            case 48: {

              buyPremium_ = input.readBool();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpInfoResponse.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100101;</code>
       */
      ID(2100101),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100101;</code>
       */
      public static final int ID_VALUE = 2100101;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100101: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpInfoResponse.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int LEVEL_FIELD_NUMBER = 2;
    private int level_;
    /**
     * <pre>
     *等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    public int getLevel() {
      return level_;
    }

    public static final int EXP_FIELD_NUMBER = 3;
    private long exp_;
    /**
     * <pre>
     *经验值
     * </pre>
     *
     * <code>int64 exp = 3;</code>
     * @return The exp.
     */
    public long getExp() {
      return exp_;
    }

    public static final int FREE_REWARD_LV_FIELD_NUMBER = 4;
    private int freeRewardLv_;
    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 4;</code>
     * @return The freeRewardLv.
     */
    public int getFreeRewardLv() {
      return freeRewardLv_;
    }

    public static final int PREMIUM_REWARD_LV_FIELD_NUMBER = 5;
    private int premiumRewardLv_;
    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 5;</code>
     * @return The premiumRewardLv.
     */
    public int getPremiumRewardLv() {
      return premiumRewardLv_;
    }

    public static final int BUY_PREMIUM_FIELD_NUMBER = 6;
    private boolean buyPremium_;
    /**
     * <pre>
     *是否已经购买高级通行证
     * </pre>
     *
     * <code>bool buy_premium = 6;</code>
     * @return The buyPremium.
     */
    public boolean getBuyPremium() {
      return buyPremium_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (typeId_ != 0) {
        output.writeInt32(1, typeId_);
      }
      if (level_ != 0) {
        output.writeInt32(2, level_);
      }
      if (exp_ != 0L) {
        output.writeInt64(3, exp_);
      }
      if (freeRewardLv_ != 0) {
        output.writeInt32(4, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        output.writeInt32(5, premiumRewardLv_);
      }
      if (buyPremium_ != false) {
        output.writeBool(6, buyPremium_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      if (level_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, level_);
      }
      if (exp_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(3, exp_);
      }
      if (freeRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(5, premiumRewardLv_);
      }
      if (buyPremium_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(6, buyPremium_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (getLevel()
          != other.getLevel()) return false;
      if (getExp()
          != other.getExp()) return false;
      if (getFreeRewardLv()
          != other.getFreeRewardLv()) return false;
      if (getPremiumRewardLv()
          != other.getPremiumRewardLv()) return false;
      if (getBuyPremium()
          != other.getBuyPremium()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      hash = (37 * hash) + LEVEL_FIELD_NUMBER;
      hash = (53 * hash) + getLevel();
      hash = (37 * hash) + EXP_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getExp());
      hash = (37 * hash) + FREE_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getFreeRewardLv();
      hash = (37 * hash) + PREMIUM_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getPremiumRewardLv();
      hash = (37 * hash) + BUY_PREMIUM_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getBuyPremium());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code pb.ZhanLingExpInfoResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpInfoResponse)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        level_ = 0;

        exp_ = 0L;

        freeRewardLv_ = 0;

        premiumRewardLv_ = 0;

        buyPremium_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse(this);
        result.typeId_ = typeId_;
        result.level_ = level_;
        result.exp_ = exp_;
        result.freeRewardLv_ = freeRewardLv_;
        result.premiumRewardLv_ = premiumRewardLv_;
        result.buyPremium_ = buyPremium_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (other.getLevel() != 0) {
          setLevel(other.getLevel());
        }
        if (other.getExp() != 0L) {
          setExp(other.getExp());
        }
        if (other.getFreeRewardLv() != 0) {
          setFreeRewardLv(other.getFreeRewardLv());
        }
        if (other.getPremiumRewardLv() != 0) {
          setPremiumRewardLv(other.getPremiumRewardLv());
        }
        if (other.getBuyPremium() != false) {
          setBuyPremium(other.getBuyPremium());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private int level_ ;
      /**
       * <pre>
       *等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return The level.
       */
      public int getLevel() {
        return level_;
      }
      /**
       * <pre>
       *等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @param value The level to set.
       * @return This builder for chaining.
       */
      public Builder setLevel(int value) {
        
        level_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearLevel() {
        
        level_ = 0;
        onChanged();
        return this;
      }

      private long exp_ ;
      /**
       * <pre>
       *经验值
       * </pre>
       *
       * <code>int64 exp = 3;</code>
       * @return The exp.
       */
      public long getExp() {
        return exp_;
      }
      /**
       * <pre>
       *经验值
       * </pre>
       *
       * <code>int64 exp = 3;</code>
       * @param value The exp to set.
       * @return This builder for chaining.
       */
      public Builder setExp(long value) {
        
        exp_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *经验值
       * </pre>
       *
       * <code>int64 exp = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearExp() {
        
        exp_ = 0L;
        onChanged();
        return this;
      }

      private int freeRewardLv_ ;
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 4;</code>
       * @return The freeRewardLv.
       */
      public int getFreeRewardLv() {
        return freeRewardLv_;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 4;</code>
       * @param value The freeRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setFreeRewardLv(int value) {
        
        freeRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearFreeRewardLv() {
        
        freeRewardLv_ = 0;
        onChanged();
        return this;
      }

      private int premiumRewardLv_ ;
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 5;</code>
       * @return The premiumRewardLv.
       */
      public int getPremiumRewardLv() {
        return premiumRewardLv_;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 5;</code>
       * @param value The premiumRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setPremiumRewardLv(int value) {
        
        premiumRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearPremiumRewardLv() {
        
        premiumRewardLv_ = 0;
        onChanged();
        return this;
      }

      private boolean buyPremium_ ;
      /**
       * <pre>
       *是否已经购买高级通行证
       * </pre>
       *
       * <code>bool buy_premium = 6;</code>
       * @return The buyPremium.
       */
      public boolean getBuyPremium() {
        return buyPremium_;
      }
      /**
       * <pre>
       *是否已经购买高级通行证
       * </pre>
       *
       * <code>bool buy_premium = 6;</code>
       * @param value The buyPremium to set.
       * @return This builder for chaining.
       */
      public Builder setBuyPremium(boolean value) {
        
        buyPremium_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *是否已经购买高级通行证
       * </pre>
       *
       * <code>bool buy_premium = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearBuyPremium() {
        
        buyPremium_ = false;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpInfoResponse)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpRewardRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpRewardRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();
  }
  /**
   * <pre>
   *领取战令等级奖励
   * </pre>
   *
   * Protobuf type {@code pb.ZhanLingExpRewardRequest}
   */
  public  static final class ZhanLingExpRewardRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpRewardRequest)
      ZhanLingExpRewardRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpRewardRequest.newBuilder() to construct.
    private ZhanLingExpRewardRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpRewardRequest() {
    }

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

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

              typeId_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpRewardRequest.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100102;</code>
       */
      ID(2100102),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100102;</code>
       */
      public static final int ID_VALUE = 2100102;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100102: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpRewardRequest.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest) obj;

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

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

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     *领取战令等级奖励
     * </pre>
     *
     * Protobuf type {@code pb.ZhanLingExpRewardRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpRewardRequest)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest(this);
        result.typeId_ = typeId_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpRewardRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpRewardRequest)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpRewardResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpRewardResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 2;</code>
     * @return The freeRewardLv.
     */
    int getFreeRewardLv();

    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 3;</code>
     * @return The premiumRewardLv.
     */
    int getPremiumRewardLv();
  }
  /**
   * Protobuf type {@code pb.ZhanLingExpRewardResponse}
   */
  public  static final class ZhanLingExpRewardResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpRewardResponse)
      ZhanLingExpRewardResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpRewardResponse.newBuilder() to construct.
    private ZhanLingExpRewardResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpRewardResponse() {
    }

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

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

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

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

              premiumRewardLv_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpRewardResponse.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100102;</code>
       */
      ID(2100102),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100102;</code>
       */
      public static final int ID_VALUE = 2100102;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100102: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpRewardResponse.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int FREE_REWARD_LV_FIELD_NUMBER = 2;
    private int freeRewardLv_;
    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 2;</code>
     * @return The freeRewardLv.
     */
    public int getFreeRewardLv() {
      return freeRewardLv_;
    }

    public static final int PREMIUM_REWARD_LV_FIELD_NUMBER = 3;
    private int premiumRewardLv_;
    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 3;</code>
     * @return The premiumRewardLv.
     */
    public int getPremiumRewardLv() {
      return premiumRewardLv_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (typeId_ != 0) {
        output.writeInt32(1, typeId_);
      }
      if (freeRewardLv_ != 0) {
        output.writeInt32(2, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        output.writeInt32(3, premiumRewardLv_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      if (freeRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, premiumRewardLv_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (getFreeRewardLv()
          != other.getFreeRewardLv()) return false;
      if (getPremiumRewardLv()
          != other.getPremiumRewardLv()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      hash = (37 * hash) + FREE_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getFreeRewardLv();
      hash = (37 * hash) + PREMIUM_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getPremiumRewardLv();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code pb.ZhanLingExpRewardResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpRewardResponse)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        freeRewardLv_ = 0;

        premiumRewardLv_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRewardResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse(this);
        result.typeId_ = typeId_;
        result.freeRewardLv_ = freeRewardLv_;
        result.premiumRewardLv_ = premiumRewardLv_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (other.getFreeRewardLv() != 0) {
          setFreeRewardLv(other.getFreeRewardLv());
        }
        if (other.getPremiumRewardLv() != 0) {
          setPremiumRewardLv(other.getPremiumRewardLv());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private int freeRewardLv_ ;
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 2;</code>
       * @return The freeRewardLv.
       */
      public int getFreeRewardLv() {
        return freeRewardLv_;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 2;</code>
       * @param value The freeRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setFreeRewardLv(int value) {
        
        freeRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearFreeRewardLv() {
        
        freeRewardLv_ = 0;
        onChanged();
        return this;
      }

      private int premiumRewardLv_ ;
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 3;</code>
       * @return The premiumRewardLv.
       */
      public int getPremiumRewardLv() {
        return premiumRewardLv_;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 3;</code>
       * @param value The premiumRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setPremiumRewardLv(int value) {
        
        premiumRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearPremiumRewardLv() {
        
        premiumRewardLv_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpRewardResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpRewardResponse)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRewardResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpBuyLevelRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpBuyLevelRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *购买几级
     * </pre>
     *
     * <code>int32 buy_level = 2;</code>
     * @return The buyLevel.
     */
    int getBuyLevel();
  }
  /**
   * <pre>
   *购买战令等级
   * </pre>
   *
   * Protobuf type {@code pb.ZhanLingExpBuyLevelRequest}
   */
  public  static final class ZhanLingExpBuyLevelRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpBuyLevelRequest)
      ZhanLingExpBuyLevelRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpBuyLevelRequest.newBuilder() to construct.
    private ZhanLingExpBuyLevelRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpBuyLevelRequest() {
    }

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

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

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

              buyLevel_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpBuyLevelRequest.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100103;</code>
       */
      ID(2100103),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100103;</code>
       */
      public static final int ID_VALUE = 2100103;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100103: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpBuyLevelRequest.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int BUY_LEVEL_FIELD_NUMBER = 2;
    private int buyLevel_;
    /**
     * <pre>
     *购买几级
     * </pre>
     *
     * <code>int32 buy_level = 2;</code>
     * @return The buyLevel.
     */
    public int getBuyLevel() {
      return buyLevel_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      if (buyLevel_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, buyLevel_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (getBuyLevel()
          != other.getBuyLevel()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      hash = (37 * hash) + BUY_LEVEL_FIELD_NUMBER;
      hash = (53 * hash) + getBuyLevel();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     *购买战令等级
     * </pre>
     *
     * Protobuf type {@code pb.ZhanLingExpBuyLevelRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpBuyLevelRequest)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        buyLevel_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest(this);
        result.typeId_ = typeId_;
        result.buyLevel_ = buyLevel_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (other.getBuyLevel() != 0) {
          setBuyLevel(other.getBuyLevel());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private int buyLevel_ ;
      /**
       * <pre>
       *购买几级
       * </pre>
       *
       * <code>int32 buy_level = 2;</code>
       * @return The buyLevel.
       */
      public int getBuyLevel() {
        return buyLevel_;
      }
      /**
       * <pre>
       *购买几级
       * </pre>
       *
       * <code>int32 buy_level = 2;</code>
       * @param value The buyLevel to set.
       * @return This builder for chaining.
       */
      public Builder setBuyLevel(int value) {
        
        buyLevel_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *购买几级
       * </pre>
       *
       * <code>int32 buy_level = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearBuyLevel() {
        
        buyLevel_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpBuyLevelRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpBuyLevelRequest)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpBuyLevelResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpBuyLevelResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *当前等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    int getLevel();

    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 3;</code>
     * @return The freeRewardLv.
     */
    int getFreeRewardLv();

    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 4;</code>
     * @return The premiumRewardLv.
     */
    int getPremiumRewardLv();
  }
  /**
   * Protobuf type {@code pb.ZhanLingExpBuyLevelResponse}
   */
  public  static final class ZhanLingExpBuyLevelResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpBuyLevelResponse)
      ZhanLingExpBuyLevelResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpBuyLevelResponse.newBuilder() to construct.
    private ZhanLingExpBuyLevelResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpBuyLevelResponse() {
    }

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

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

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

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

              freeRewardLv_ = input.readInt32();
              break;
            }
            case 32: {

              premiumRewardLv_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpBuyLevelResponse.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100103;</code>
       */
      ID(2100103),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100103;</code>
       */
      public static final int ID_VALUE = 2100103;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100103: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpBuyLevelResponse.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int LEVEL_FIELD_NUMBER = 2;
    private int level_;
    /**
     * <pre>
     *当前等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    public int getLevel() {
      return level_;
    }

    public static final int FREE_REWARD_LV_FIELD_NUMBER = 3;
    private int freeRewardLv_;
    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 3;</code>
     * @return The freeRewardLv.
     */
    public int getFreeRewardLv() {
      return freeRewardLv_;
    }

    public static final int PREMIUM_REWARD_LV_FIELD_NUMBER = 4;
    private int premiumRewardLv_;
    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 4;</code>
     * @return The premiumRewardLv.
     */
    public int getPremiumRewardLv() {
      return premiumRewardLv_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (typeId_ != 0) {
        output.writeInt32(1, typeId_);
      }
      if (level_ != 0) {
        output.writeInt32(2, level_);
      }
      if (freeRewardLv_ != 0) {
        output.writeInt32(3, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        output.writeInt32(4, premiumRewardLv_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      if (level_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, level_);
      }
      if (freeRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, premiumRewardLv_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (getLevel()
          != other.getLevel()) return false;
      if (getFreeRewardLv()
          != other.getFreeRewardLv()) return false;
      if (getPremiumRewardLv()
          != other.getPremiumRewardLv()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      hash = (37 * hash) + LEVEL_FIELD_NUMBER;
      hash = (53 * hash) + getLevel();
      hash = (37 * hash) + FREE_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getFreeRewardLv();
      hash = (37 * hash) + PREMIUM_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getPremiumRewardLv();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code pb.ZhanLingExpBuyLevelResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpBuyLevelResponse)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        level_ = 0;

        freeRewardLv_ = 0;

        premiumRewardLv_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse(this);
        result.typeId_ = typeId_;
        result.level_ = level_;
        result.freeRewardLv_ = freeRewardLv_;
        result.premiumRewardLv_ = premiumRewardLv_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (other.getLevel() != 0) {
          setLevel(other.getLevel());
        }
        if (other.getFreeRewardLv() != 0) {
          setFreeRewardLv(other.getFreeRewardLv());
        }
        if (other.getPremiumRewardLv() != 0) {
          setPremiumRewardLv(other.getPremiumRewardLv());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private int level_ ;
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return The level.
       */
      public int getLevel() {
        return level_;
      }
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @param value The level to set.
       * @return This builder for chaining.
       */
      public Builder setLevel(int value) {
        
        level_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearLevel() {
        
        level_ = 0;
        onChanged();
        return this;
      }

      private int freeRewardLv_ ;
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @return The freeRewardLv.
       */
      public int getFreeRewardLv() {
        return freeRewardLv_;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @param value The freeRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setFreeRewardLv(int value) {
        
        freeRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearFreeRewardLv() {
        
        freeRewardLv_ = 0;
        onChanged();
        return this;
      }

      private int premiumRewardLv_ ;
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @return The premiumRewardLv.
       */
      public int getPremiumRewardLv() {
        return premiumRewardLv_;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @param value The premiumRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setPremiumRewardLv(int value) {
        
        premiumRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearPremiumRewardLv() {
        
        premiumRewardLv_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpBuyLevelResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpBuyLevelResponse)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpBuyLevelResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpCfgRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpCfgRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();
  }
  /**
   * <pre>
   *活动配置请求
   * </pre>
   *
   * Protobuf type {@code pb.ZhanLingExpCfgRequest}
   */
  public  static final class ZhanLingExpCfgRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpCfgRequest)
      ZhanLingExpCfgRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpCfgRequest.newBuilder() to construct.
    private ZhanLingExpCfgRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpCfgRequest() {
    }

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

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

              typeId_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpCfgRequest.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100104;</code>
       */
      ID(2100104),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100104;</code>
       */
      public static final int ID_VALUE = 2100104;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100104: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpCfgRequest.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest) obj;

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

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

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     *活动配置请求
     * </pre>
     *
     * Protobuf type {@code pb.ZhanLingExpCfgRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpCfgRequest)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest(this);
        result.typeId_ = typeId_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpCfgRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpCfgRequest)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpCfgResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpCfgResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> 
        getCfgsList();
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getCfgs(int index);
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    int getCfgsCount();
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder> 
        getCfgsOrBuilderList();
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder getCfgsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.ZhanLingExpCfgResponse}
   */
  public  static final class ZhanLingExpCfgResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpCfgResponse)
      ZhanLingExpCfgResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpCfgResponse.newBuilder() to construct.
    private ZhanLingExpCfgResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpCfgResponse() {
      cfgs_ = java.util.Collections.emptyList();
    }

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

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

              typeId_ = input.readInt32();
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                cfgs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg>();
                mutable_bitField0_ |= 0x00000001;
              }
              cfgs_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          cfgs_ = java.util.Collections.unmodifiableList(cfgs_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpCfgResponse.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100104;</code>
       */
      ID(2100104),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100104;</code>
       */
      public static final int ID_VALUE = 2100104;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100104: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpCfgResponse.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int CFGS_FIELD_NUMBER = 2;
    private java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> cfgs_;
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> getCfgsList() {
      return cfgs_;
    }
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder> 
        getCfgsOrBuilderList() {
      return cfgs_;
    }
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    public int getCfgsCount() {
      return cfgs_.size();
    }
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getCfgs(int index) {
      return cfgs_.get(index);
    }
    /**
     * <pre>
     *活动配置
     * </pre>
     *
     * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
     */
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder getCfgsOrBuilder(
        int index) {
      return cfgs_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

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

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (!getCfgsList()
          .equals(other.getCfgsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      if (getCfgsCount() > 0) {
        hash = (37 * hash) + CFGS_FIELD_NUMBER;
        hash = (53 * hash) + getCfgsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code pb.ZhanLingExpCfgResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpCfgResponse)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpCfgResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse(this);
        int from_bitField0_ = bitField0_;
        result.typeId_ = typeId_;
        if (cfgsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            cfgs_ = java.util.Collections.unmodifiableList(cfgs_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.cfgs_ = cfgs_;
        } else {
          result.cfgs_ = cfgsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (cfgsBuilder_ == null) {
          if (!other.cfgs_.isEmpty()) {
            if (cfgs_.isEmpty()) {
              cfgs_ = other.cfgs_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureCfgsIsMutable();
              cfgs_.addAll(other.cfgs_);
            }
            onChanged();
          }
        } else {
          if (!other.cfgs_.isEmpty()) {
            if (cfgsBuilder_.isEmpty()) {
              cfgsBuilder_.dispose();
              cfgsBuilder_ = null;
              cfgs_ = other.cfgs_;
              bitField0_ = (bitField0_ & ~0x00000001);
              cfgsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getCfgsFieldBuilder() : null;
            } else {
              cfgsBuilder_.addAllMessages(other.cfgs_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> cfgs_ =
        java.util.Collections.emptyList();
      private void ensureCfgsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          cfgs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg>(cfgs_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder> cfgsBuilder_;

      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> getCfgsList() {
        if (cfgsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(cfgs_);
        } else {
          return cfgsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public int getCfgsCount() {
        if (cfgsBuilder_ == null) {
          return cfgs_.size();
        } else {
          return cfgsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getCfgs(int index) {
        if (cfgsBuilder_ == null) {
          return cfgs_.get(index);
        } else {
          return cfgsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder setCfgs(
          int index, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg value) {
        if (cfgsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCfgsIsMutable();
          cfgs_.set(index, value);
          onChanged();
        } else {
          cfgsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder setCfgs(
          int index, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder builderForValue) {
        if (cfgsBuilder_ == null) {
          ensureCfgsIsMutable();
          cfgs_.set(index, builderForValue.build());
          onChanged();
        } else {
          cfgsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder addCfgs(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg value) {
        if (cfgsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCfgsIsMutable();
          cfgs_.add(value);
          onChanged();
        } else {
          cfgsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder addCfgs(
          int index, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg value) {
        if (cfgsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCfgsIsMutable();
          cfgs_.add(index, value);
          onChanged();
        } else {
          cfgsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder addCfgs(
          pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder builderForValue) {
        if (cfgsBuilder_ == null) {
          ensureCfgsIsMutable();
          cfgs_.add(builderForValue.build());
          onChanged();
        } else {
          cfgsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder addCfgs(
          int index, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder builderForValue) {
        if (cfgsBuilder_ == null) {
          ensureCfgsIsMutable();
          cfgs_.add(index, builderForValue.build());
          onChanged();
        } else {
          cfgsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder addAllCfgs(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg> values) {
        if (cfgsBuilder_ == null) {
          ensureCfgsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, cfgs_);
          onChanged();
        } else {
          cfgsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder clearCfgs() {
        if (cfgsBuilder_ == null) {
          cfgs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          cfgsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public Builder removeCfgs(int index) {
        if (cfgsBuilder_ == null) {
          ensureCfgsIsMutable();
          cfgs_.remove(index);
          onChanged();
        } else {
          cfgsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder getCfgsBuilder(
          int index) {
        return getCfgsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder getCfgsOrBuilder(
          int index) {
        if (cfgsBuilder_ == null) {
          return cfgs_.get(index);  } else {
          return cfgsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder> 
           getCfgsOrBuilderList() {
        if (cfgsBuilder_ != null) {
          return cfgsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(cfgs_);
        }
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder addCfgsBuilder() {
        return getCfgsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.getDefaultInstance());
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder addCfgsBuilder(
          int index) {
        return getCfgsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.getDefaultInstance());
      }
      /**
       * <pre>
       *活动配置
       * </pre>
       *
       * <code>repeated .pb.PbZhanLingExpCfg cfgs = 2;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder> 
           getCfgsBuilderList() {
        return getCfgsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder> 
          getCfgsFieldBuilder() {
        if (cfgsBuilder_ == null) {
          cfgsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder>(
                  cfgs_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          cfgs_ = null;
        }
        return cfgsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpCfgResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpCfgResponse)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpCfgResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ZhanLingExpRechargeMessageOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ZhanLingExpRechargeMessage)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    int getTypeId();

    /**
     * <pre>
     *当前等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    int getLevel();

    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 3;</code>
     * @return The freeRewardLv.
     */
    int getFreeRewardLv();

    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 4;</code>
     * @return The premiumRewardLv.
     */
    int getPremiumRewardLv();
  }
  /**
   * <pre>
   *购买高级战令成功推送
   * </pre>
   *
   * Protobuf type {@code pb.ZhanLingExpRechargeMessage}
   */
  public  static final class ZhanLingExpRechargeMessage extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ZhanLingExpRechargeMessage)
      ZhanLingExpRechargeMessageOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ZhanLingExpRechargeMessage.newBuilder() to construct.
    private ZhanLingExpRechargeMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ZhanLingExpRechargeMessage() {
    }

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

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

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

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

              freeRewardLv_ = input.readInt32();
              break;
            }
            case 32: {

              premiumRewardLv_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRechargeMessage_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRechargeMessage_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.Builder.class);
    }

    /**
     * Protobuf enum {@code pb.ZhanLingExpRechargeMessage.Proto}
     */
    public enum Proto
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>UNKNOWN = 0;</code>
       */
      UNKNOWN(0),
      /**
       * <code>ID = 2100105;</code>
       */
      ID(2100105),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>UNKNOWN = 0;</code>
       */
      public static final int UNKNOWN_VALUE = 0;
      /**
       * <code>ID = 2100105;</code>
       */
      public static final int ID_VALUE = 2100105;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        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 Proto 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 Proto forNumber(int value) {
        switch (value) {
          case 0: return UNKNOWN;
          case 2100105: return ID;
          default: return null;
        }
      }

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

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.getDescriptor().getEnumTypes().get(0);
      }

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

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

      private final int value;

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

      // @@protoc_insertion_point(enum_scope:pb.ZhanLingExpRechargeMessage.Proto)
    }

    public static final int TYPE_ID_FIELD_NUMBER = 1;
    private int typeId_;
    /**
     * <pre>
     *活动类型ID
     * </pre>
     *
     * <code>int32 type_id = 1;</code>
     * @return The typeId.
     */
    public int getTypeId() {
      return typeId_;
    }

    public static final int LEVEL_FIELD_NUMBER = 2;
    private int level_;
    /**
     * <pre>
     *当前等级
     * </pre>
     *
     * <code>int32 level = 2;</code>
     * @return The level.
     */
    public int getLevel() {
      return level_;
    }

    public static final int FREE_REWARD_LV_FIELD_NUMBER = 3;
    private int freeRewardLv_;
    /**
     * <pre>
     *已领取到的免费奖励等级
     * </pre>
     *
     * <code>int32 free_reward_lv = 3;</code>
     * @return The freeRewardLv.
     */
    public int getFreeRewardLv() {
      return freeRewardLv_;
    }

    public static final int PREMIUM_REWARD_LV_FIELD_NUMBER = 4;
    private int premiumRewardLv_;
    /**
     * <pre>
     *已领取到的高级奖励等级
     * </pre>
     *
     * <code>int32 premium_reward_lv = 4;</code>
     * @return The premiumRewardLv.
     */
    public int getPremiumRewardLv() {
      return premiumRewardLv_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (typeId_ != 0) {
        output.writeInt32(1, typeId_);
      }
      if (level_ != 0) {
        output.writeInt32(2, level_);
      }
      if (freeRewardLv_ != 0) {
        output.writeInt32(3, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        output.writeInt32(4, premiumRewardLv_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (typeId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, typeId_);
      }
      if (level_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, level_);
      }
      if (freeRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, freeRewardLv_);
      }
      if (premiumRewardLv_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, premiumRewardLv_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage) obj;

      if (getTypeId()
          != other.getTypeId()) return false;
      if (getLevel()
          != other.getLevel()) return false;
      if (getFreeRewardLv()
          != other.getFreeRewardLv()) return false;
      if (getPremiumRewardLv()
          != other.getPremiumRewardLv()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTypeId();
      hash = (37 * hash) + LEVEL_FIELD_NUMBER;
      hash = (53 * hash) + getLevel();
      hash = (37 * hash) + FREE_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getFreeRewardLv();
      hash = (37 * hash) + PREMIUM_REWARD_LV_FIELD_NUMBER;
      hash = (53 * hash) + getPremiumRewardLv();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     *购买高级战令成功推送
     * </pre>
     *
     * Protobuf type {@code pb.ZhanLingExpRechargeMessage}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ZhanLingExpRechargeMessage)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessageOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRechargeMessage_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRechargeMessage_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        level_ = 0;

        freeRewardLv_ = 0;

        premiumRewardLv_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_ZhanLingExpRechargeMessage_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage(this);
        result.typeId_ = typeId_;
        result.level_ = level_;
        result.freeRewardLv_ = freeRewardLv_;
        result.premiumRewardLv_ = premiumRewardLv_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage.getDefaultInstance()) return this;
        if (other.getTypeId() != 0) {
          setTypeId(other.getTypeId());
        }
        if (other.getLevel() != 0) {
          setLevel(other.getLevel());
        }
        if (other.getFreeRewardLv() != 0) {
          setFreeRewardLv(other.getFreeRewardLv());
        }
        if (other.getPremiumRewardLv() != 0) {
          setPremiumRewardLv(other.getPremiumRewardLv());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int typeId_ ;
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return The typeId.
       */
      public int getTypeId() {
        return typeId_;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @param value The typeId to set.
       * @return This builder for chaining.
       */
      public Builder setTypeId(int value) {
        
        typeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *活动类型ID
       * </pre>
       *
       * <code>int32 type_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTypeId() {
        
        typeId_ = 0;
        onChanged();
        return this;
      }

      private int level_ ;
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return The level.
       */
      public int getLevel() {
        return level_;
      }
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @param value The level to set.
       * @return This builder for chaining.
       */
      public Builder setLevel(int value) {
        
        level_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *当前等级
       * </pre>
       *
       * <code>int32 level = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearLevel() {
        
        level_ = 0;
        onChanged();
        return this;
      }

      private int freeRewardLv_ ;
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @return The freeRewardLv.
       */
      public int getFreeRewardLv() {
        return freeRewardLv_;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @param value The freeRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setFreeRewardLv(int value) {
        
        freeRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的免费奖励等级
       * </pre>
       *
       * <code>int32 free_reward_lv = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearFreeRewardLv() {
        
        freeRewardLv_ = 0;
        onChanged();
        return this;
      }

      private int premiumRewardLv_ ;
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @return The premiumRewardLv.
       */
      public int getPremiumRewardLv() {
        return premiumRewardLv_;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @param value The premiumRewardLv to set.
       * @return This builder for chaining.
       */
      public Builder setPremiumRewardLv(int value) {
        
        premiumRewardLv_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取到的高级奖励等级
       * </pre>
       *
       * <code>int32 premium_reward_lv = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearPremiumRewardLv() {
        
        premiumRewardLv_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.ZhanLingExpRechargeMessage)
    }

    // @@protoc_insertion_point(class_scope:pb.ZhanLingExpRechargeMessage)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.ZhanLingExpRechargeMessage getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface PbZhanLingExpCfgOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.PbZhanLingExpCfg)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>int32 level = 1;</code>
     * @return The level.
     */
    int getLevel();

    /**
     * <code>int32 need_exp = 2;</code>
     * @return The needExp.
     */
    int getNeedExp();

    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> 
        getFreeRewardList();
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getFreeReward(int index);
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    int getFreeRewardCount();
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
        getFreeRewardOrBuilderList();
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getFreeRewardOrBuilder(
        int index);

    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> 
        getPremiumRewardList();
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getPremiumReward(int index);
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    int getPremiumRewardCount();
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
        getPremiumRewardOrBuilderList();
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getPremiumRewardOrBuilder(
        int index);

    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     * @return Whether the buyLevelCost field is set.
     */
    boolean hasBuyLevelCost();
    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     * @return The buyLevelCost.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getBuyLevelCost();
    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getBuyLevelCostOrBuilder();
  }
  /**
   * Protobuf type {@code pb.PbZhanLingExpCfg}
   */
  public  static final class PbZhanLingExpCfg extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbZhanLingExpCfg)
      PbZhanLingExpCfgOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbZhanLingExpCfg.newBuilder() to construct.
    private PbZhanLingExpCfg(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbZhanLingExpCfg() {
      freeReward_ = java.util.Collections.emptyList();
      premiumReward_ = java.util.Collections.emptyList();
    }

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

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

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

              needExp_ = input.readInt32();
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                freeReward_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem>();
                mutable_bitField0_ |= 0x00000001;
              }
              freeReward_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.parser(), extensionRegistry));
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                premiumReward_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem>();
                mutable_bitField0_ |= 0x00000002;
              }
              premiumReward_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.parser(), extensionRegistry));
              break;
            }
            case 42: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder subBuilder = null;
              if (buyLevelCost_ != null) {
                subBuilder = buyLevelCost_.toBuilder();
              }
              buyLevelCost_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(buyLevelCost_);
                buyLevelCost_ = subBuilder.buildPartial();
              }

              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          freeReward_ = java.util.Collections.unmodifiableList(freeReward_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          premiumReward_ = java.util.Collections.unmodifiableList(premiumReward_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_PbZhanLingExpCfg_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_PbZhanLingExpCfg_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder.class);
    }

    public static final int LEVEL_FIELD_NUMBER = 1;
    private int level_;
    /**
     * <code>int32 level = 1;</code>
     * @return The level.
     */
    public int getLevel() {
      return level_;
    }

    public static final int NEED_EXP_FIELD_NUMBER = 2;
    private int needExp_;
    /**
     * <code>int32 need_exp = 2;</code>
     * @return The needExp.
     */
    public int getNeedExp() {
      return needExp_;
    }

    public static final int FREE_REWARD_FIELD_NUMBER = 3;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> freeReward_;
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> getFreeRewardList() {
      return freeReward_;
    }
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
        getFreeRewardOrBuilderList() {
      return freeReward_;
    }
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    public int getFreeRewardCount() {
      return freeReward_.size();
    }
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getFreeReward(int index) {
      return freeReward_.get(index);
    }
    /**
     * <code>repeated .pb.PbItem free_reward = 3;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getFreeRewardOrBuilder(
        int index) {
      return freeReward_.get(index);
    }

    public static final int PREMIUM_REWARD_FIELD_NUMBER = 4;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> premiumReward_;
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> getPremiumRewardList() {
      return premiumReward_;
    }
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
        getPremiumRewardOrBuilderList() {
      return premiumReward_;
    }
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    public int getPremiumRewardCount() {
      return premiumReward_.size();
    }
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getPremiumReward(int index) {
      return premiumReward_.get(index);
    }
    /**
     * <code>repeated .pb.PbItem premium_reward = 4;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getPremiumRewardOrBuilder(
        int index) {
      return premiumReward_.get(index);
    }

    public static final int BUY_LEVEL_COST_FIELD_NUMBER = 5;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem buyLevelCost_;
    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     * @return Whether the buyLevelCost field is set.
     */
    public boolean hasBuyLevelCost() {
      return buyLevelCost_ != null;
    }
    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     * @return The buyLevelCost.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getBuyLevelCost() {
      return buyLevelCost_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance() : buyLevelCost_;
    }
    /**
     * <code>.pb.PbItem buy_level_cost = 5;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getBuyLevelCostOrBuilder() {
      return getBuyLevelCost();
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (level_ != 0) {
        output.writeInt32(1, level_);
      }
      if (needExp_ != 0) {
        output.writeInt32(2, needExp_);
      }
      for (int i = 0; i < freeReward_.size(); i++) {
        output.writeMessage(3, freeReward_.get(i));
      }
      for (int i = 0; i < premiumReward_.size(); i++) {
        output.writeMessage(4, premiumReward_.get(i));
      }
      if (buyLevelCost_ != null) {
        output.writeMessage(5, getBuyLevelCost());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (level_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, level_);
      }
      if (needExp_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, needExp_);
      }
      for (int i = 0; i < freeReward_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, freeReward_.get(i));
      }
      for (int i = 0; i < premiumReward_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, premiumReward_.get(i));
      }
      if (buyLevelCost_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, getBuyLevelCost());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg other = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg) obj;

      if (getLevel()
          != other.getLevel()) return false;
      if (getNeedExp()
          != other.getNeedExp()) return false;
      if (!getFreeRewardList()
          .equals(other.getFreeRewardList())) return false;
      if (!getPremiumRewardList()
          .equals(other.getPremiumRewardList())) return false;
      if (hasBuyLevelCost() != other.hasBuyLevelCost()) return false;
      if (hasBuyLevelCost()) {
        if (!getBuyLevelCost()
            .equals(other.getBuyLevelCost())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + LEVEL_FIELD_NUMBER;
      hash = (53 * hash) + getLevel();
      hash = (37 * hash) + NEED_EXP_FIELD_NUMBER;
      hash = (53 * hash) + getNeedExp();
      if (getFreeRewardCount() > 0) {
        hash = (37 * hash) + FREE_REWARD_FIELD_NUMBER;
        hash = (53 * hash) + getFreeRewardList().hashCode();
      }
      if (getPremiumRewardCount() > 0) {
        hash = (37 * hash) + PREMIUM_REWARD_FIELD_NUMBER;
        hash = (53 * hash) + getPremiumRewardList().hashCode();
      }
      if (hasBuyLevelCost()) {
        hash = (37 * hash) + BUY_LEVEL_COST_FIELD_NUMBER;
        hash = (53 * hash) + getBuyLevelCost().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code pb.PbZhanLingExpCfg}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbZhanLingExpCfg)
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfgOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_PbZhanLingExpCfg_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_PbZhanLingExpCfg_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.class, pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        needExp_ = 0;

        if (freeRewardBuilder_ == null) {
          freeReward_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          freeRewardBuilder_.clear();
        }
        if (premiumRewardBuilder_ == null) {
          premiumReward_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          premiumRewardBuilder_.clear();
        }
        if (buyLevelCostBuilder_ == null) {
          buyLevelCost_ = null;
        } else {
          buyLevelCost_ = null;
          buyLevelCostBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.internal_static_pb_PbZhanLingExpCfg_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.getDefaultInstance();
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg build() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg buildPartial() {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg result = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg(this);
        int from_bitField0_ = bitField0_;
        result.level_ = level_;
        result.needExp_ = needExp_;
        if (freeRewardBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            freeReward_ = java.util.Collections.unmodifiableList(freeReward_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.freeReward_ = freeReward_;
        } else {
          result.freeReward_ = freeRewardBuilder_.build();
        }
        if (premiumRewardBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            premiumReward_ = java.util.Collections.unmodifiableList(premiumReward_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.premiumReward_ = premiumReward_;
        } else {
          result.premiumReward_ = premiumRewardBuilder_.build();
        }
        if (buyLevelCostBuilder_ == null) {
          result.buyLevelCost_ = buyLevelCost_;
        } else {
          result.buyLevelCost_ = buyLevelCostBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg) {
          return mergeFrom((pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg other) {
        if (other == pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg.getDefaultInstance()) return this;
        if (other.getLevel() != 0) {
          setLevel(other.getLevel());
        }
        if (other.getNeedExp() != 0) {
          setNeedExp(other.getNeedExp());
        }
        if (freeRewardBuilder_ == null) {
          if (!other.freeReward_.isEmpty()) {
            if (freeReward_.isEmpty()) {
              freeReward_ = other.freeReward_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureFreeRewardIsMutable();
              freeReward_.addAll(other.freeReward_);
            }
            onChanged();
          }
        } else {
          if (!other.freeReward_.isEmpty()) {
            if (freeRewardBuilder_.isEmpty()) {
              freeRewardBuilder_.dispose();
              freeRewardBuilder_ = null;
              freeReward_ = other.freeReward_;
              bitField0_ = (bitField0_ & ~0x00000001);
              freeRewardBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getFreeRewardFieldBuilder() : null;
            } else {
              freeRewardBuilder_.addAllMessages(other.freeReward_);
            }
          }
        }
        if (premiumRewardBuilder_ == null) {
          if (!other.premiumReward_.isEmpty()) {
            if (premiumReward_.isEmpty()) {
              premiumReward_ = other.premiumReward_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensurePremiumRewardIsMutable();
              premiumReward_.addAll(other.premiumReward_);
            }
            onChanged();
          }
        } else {
          if (!other.premiumReward_.isEmpty()) {
            if (premiumRewardBuilder_.isEmpty()) {
              premiumRewardBuilder_.dispose();
              premiumRewardBuilder_ = null;
              premiumReward_ = other.premiumReward_;
              bitField0_ = (bitField0_ & ~0x00000002);
              premiumRewardBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getPremiumRewardFieldBuilder() : null;
            } else {
              premiumRewardBuilder_.addAllMessages(other.premiumReward_);
            }
          }
        }
        if (other.hasBuyLevelCost()) {
          mergeBuyLevelCost(other.getBuyLevelCost());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

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

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int level_ ;
      /**
       * <code>int32 level = 1;</code>
       * @return The level.
       */
      public int getLevel() {
        return level_;
      }
      /**
       * <code>int32 level = 1;</code>
       * @param value The level to set.
       * @return This builder for chaining.
       */
      public Builder setLevel(int value) {
        
        level_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 level = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearLevel() {
        
        level_ = 0;
        onChanged();
        return this;
      }

      private int needExp_ ;
      /**
       * <code>int32 need_exp = 2;</code>
       * @return The needExp.
       */
      public int getNeedExp() {
        return needExp_;
      }
      /**
       * <code>int32 need_exp = 2;</code>
       * @param value The needExp to set.
       * @return This builder for chaining.
       */
      public Builder setNeedExp(int value) {
        
        needExp_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 need_exp = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearNeedExp() {
        
        needExp_ = 0;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> freeReward_ =
        java.util.Collections.emptyList();
      private void ensureFreeRewardIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          freeReward_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem>(freeReward_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> freeRewardBuilder_;

      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> getFreeRewardList() {
        if (freeRewardBuilder_ == null) {
          return java.util.Collections.unmodifiableList(freeReward_);
        } else {
          return freeRewardBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public int getFreeRewardCount() {
        if (freeRewardBuilder_ == null) {
          return freeReward_.size();
        } else {
          return freeRewardBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getFreeReward(int index) {
        if (freeRewardBuilder_ == null) {
          return freeReward_.get(index);
        } else {
          return freeRewardBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder setFreeReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (freeRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFreeRewardIsMutable();
          freeReward_.set(index, value);
          onChanged();
        } else {
          freeRewardBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder setFreeReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (freeRewardBuilder_ == null) {
          ensureFreeRewardIsMutable();
          freeReward_.set(index, builderForValue.build());
          onChanged();
        } else {
          freeRewardBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder addFreeReward(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (freeRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFreeRewardIsMutable();
          freeReward_.add(value);
          onChanged();
        } else {
          freeRewardBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder addFreeReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (freeRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFreeRewardIsMutable();
          freeReward_.add(index, value);
          onChanged();
        } else {
          freeRewardBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder addFreeReward(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (freeRewardBuilder_ == null) {
          ensureFreeRewardIsMutable();
          freeReward_.add(builderForValue.build());
          onChanged();
        } else {
          freeRewardBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder addFreeReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (freeRewardBuilder_ == null) {
          ensureFreeRewardIsMutable();
          freeReward_.add(index, builderForValue.build());
          onChanged();
        } else {
          freeRewardBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder addAllFreeReward(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> values) {
        if (freeRewardBuilder_ == null) {
          ensureFreeRewardIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, freeReward_);
          onChanged();
        } else {
          freeRewardBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder clearFreeReward() {
        if (freeRewardBuilder_ == null) {
          freeReward_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          freeRewardBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public Builder removeFreeReward(int index) {
        if (freeRewardBuilder_ == null) {
          ensureFreeRewardIsMutable();
          freeReward_.remove(index);
          onChanged();
        } else {
          freeRewardBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder getFreeRewardBuilder(
          int index) {
        return getFreeRewardFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getFreeRewardOrBuilder(
          int index) {
        if (freeRewardBuilder_ == null) {
          return freeReward_.get(index);  } else {
          return freeRewardBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
           getFreeRewardOrBuilderList() {
        if (freeRewardBuilder_ != null) {
          return freeRewardBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(freeReward_);
        }
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder addFreeRewardBuilder() {
        return getFreeRewardFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance());
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder addFreeRewardBuilder(
          int index) {
        return getFreeRewardFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance());
      }
      /**
       * <code>repeated .pb.PbItem free_reward = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder> 
           getFreeRewardBuilderList() {
        return getFreeRewardFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
          getFreeRewardFieldBuilder() {
        if (freeRewardBuilder_ == null) {
          freeRewardBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder>(
                  freeReward_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          freeReward_ = null;
        }
        return freeRewardBuilder_;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> premiumReward_ =
        java.util.Collections.emptyList();
      private void ensurePremiumRewardIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          premiumReward_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem>(premiumReward_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> premiumRewardBuilder_;

      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> getPremiumRewardList() {
        if (premiumRewardBuilder_ == null) {
          return java.util.Collections.unmodifiableList(premiumReward_);
        } else {
          return premiumRewardBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public int getPremiumRewardCount() {
        if (premiumRewardBuilder_ == null) {
          return premiumReward_.size();
        } else {
          return premiumRewardBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getPremiumReward(int index) {
        if (premiumRewardBuilder_ == null) {
          return premiumReward_.get(index);
        } else {
          return premiumRewardBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder setPremiumReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (premiumRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePremiumRewardIsMutable();
          premiumReward_.set(index, value);
          onChanged();
        } else {
          premiumRewardBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder setPremiumReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (premiumRewardBuilder_ == null) {
          ensurePremiumRewardIsMutable();
          premiumReward_.set(index, builderForValue.build());
          onChanged();
        } else {
          premiumRewardBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder addPremiumReward(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (premiumRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePremiumRewardIsMutable();
          premiumReward_.add(value);
          onChanged();
        } else {
          premiumRewardBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder addPremiumReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (premiumRewardBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePremiumRewardIsMutable();
          premiumReward_.add(index, value);
          onChanged();
        } else {
          premiumRewardBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder addPremiumReward(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (premiumRewardBuilder_ == null) {
          ensurePremiumRewardIsMutable();
          premiumReward_.add(builderForValue.build());
          onChanged();
        } else {
          premiumRewardBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder addPremiumReward(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (premiumRewardBuilder_ == null) {
          ensurePremiumRewardIsMutable();
          premiumReward_.add(index, builderForValue.build());
          onChanged();
        } else {
          premiumRewardBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder addAllPremiumReward(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem> values) {
        if (premiumRewardBuilder_ == null) {
          ensurePremiumRewardIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, premiumReward_);
          onChanged();
        } else {
          premiumRewardBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder clearPremiumReward() {
        if (premiumRewardBuilder_ == null) {
          premiumReward_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          premiumRewardBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public Builder removePremiumReward(int index) {
        if (premiumRewardBuilder_ == null) {
          ensurePremiumRewardIsMutable();
          premiumReward_.remove(index);
          onChanged();
        } else {
          premiumRewardBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder getPremiumRewardBuilder(
          int index) {
        return getPremiumRewardFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getPremiumRewardOrBuilder(
          int index) {
        if (premiumRewardBuilder_ == null) {
          return premiumReward_.get(index);  } else {
          return premiumRewardBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
           getPremiumRewardOrBuilderList() {
        if (premiumRewardBuilder_ != null) {
          return premiumRewardBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(premiumReward_);
        }
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder addPremiumRewardBuilder() {
        return getPremiumRewardFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance());
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder addPremiumRewardBuilder(
          int index) {
        return getPremiumRewardFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance());
      }
      /**
       * <code>repeated .pb.PbItem premium_reward = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder> 
           getPremiumRewardBuilderList() {
        return getPremiumRewardFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
          getPremiumRewardFieldBuilder() {
        if (premiumRewardBuilder_ == null) {
          premiumRewardBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder>(
                  premiumReward_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          premiumReward_ = null;
        }
        return premiumRewardBuilder_;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem buyLevelCost_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> buyLevelCostBuilder_;
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       * @return Whether the buyLevelCost field is set.
       */
      public boolean hasBuyLevelCost() {
        return buyLevelCostBuilder_ != null || buyLevelCost_ != null;
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       * @return The buyLevelCost.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem getBuyLevelCost() {
        if (buyLevelCostBuilder_ == null) {
          return buyLevelCost_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance() : buyLevelCost_;
        } else {
          return buyLevelCostBuilder_.getMessage();
        }
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public Builder setBuyLevelCost(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (buyLevelCostBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          buyLevelCost_ = value;
          onChanged();
        } else {
          buyLevelCostBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public Builder setBuyLevelCost(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder builderForValue) {
        if (buyLevelCostBuilder_ == null) {
          buyLevelCost_ = builderForValue.build();
          onChanged();
        } else {
          buyLevelCostBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public Builder mergeBuyLevelCost(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem value) {
        if (buyLevelCostBuilder_ == null) {
          if (buyLevelCost_ != null) {
            buyLevelCost_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.newBuilder(buyLevelCost_).mergeFrom(value).buildPartial();
          } else {
            buyLevelCost_ = value;
          }
          onChanged();
        } else {
          buyLevelCostBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public Builder clearBuyLevelCost() {
        if (buyLevelCostBuilder_ == null) {
          buyLevelCost_ = null;
          onChanged();
        } else {
          buyLevelCost_ = null;
          buyLevelCostBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder getBuyLevelCostBuilder() {
        
        onChanged();
        return getBuyLevelCostFieldBuilder().getBuilder();
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder getBuyLevelCostOrBuilder() {
        if (buyLevelCostBuilder_ != null) {
          return buyLevelCostBuilder_.getMessageOrBuilder();
        } else {
          return buyLevelCost_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.getDefaultInstance() : buyLevelCost_;
        }
      }
      /**
       * <code>.pb.PbItem buy_level_cost = 5;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder> 
          getBuyLevelCostFieldBuilder() {
        if (buyLevelCostBuilder_ == null) {
          buyLevelCostBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItem.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbItemOrBuilder>(
                  getBuyLevelCost(),
                  getParentForChildren(),
                  isClean());
          buyLevelCost_ = null;
        }
        return buyLevelCostBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:pb.PbZhanLingExpCfg)
    }

    // @@protoc_insertion_point(class_scope:pb.PbZhanLingExpCfg)
    private static final pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg();
    }

    public static pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.promotion.P1001ZhanLingExp.PbZhanLingExpCfg getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpInfoRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpInfoRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpRewardRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpRewardRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpRewardResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpRewardResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpBuyLevelRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpBuyLevelResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpCfgRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpCfgRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpCfgResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpCfgResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ZhanLingExpRechargeMessage_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ZhanLingExpRechargeMessage_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbZhanLingExpCfg_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbZhanLingExpCfg_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n\026P1001ZhanLingExp.proto\022\002pb\032\020MiniStruct" +
      ".proto\"J\n\026ZhanLingExpInfoRequest\022\017\n\007type" +
      "_id\030\001 \001(\005\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\205\227" +
      "\200\001\"\257\001\n\027ZhanLingExpInfoResponse\022\017\n\007type_i" +
      "d\030\001 \001(\005\022\r\n\005level\030\002 \001(\005\022\013\n\003exp\030\003 \001(\003\022\026\n\016f" +
      "ree_reward_lv\030\004 \001(\005\022\031\n\021premium_reward_lv" +
      "\030\005 \001(\005\022\023\n\013buy_premium\030\006 \001(\010\"\037\n\005Proto\022\013\n\007" +
      "UNKNOWN\020\000\022\t\n\002ID\020\205\227\200\001\"L\n\030ZhanLingExpRewar" +
      "dRequest\022\017\n\007type_id\030\001 \001(\005\"\037\n\005Proto\022\013\n\007UN" +
      "KNOWN\020\000\022\t\n\002ID\020\206\227\200\001\"\200\001\n\031ZhanLingExpReward" +
      "Response\022\017\n\007type_id\030\001 \001(\005\022\026\n\016free_reward" +
      "_lv\030\002 \001(\005\022\031\n\021premium_reward_lv\030\003 \001(\005\"\037\n\005" +
      "Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\206\227\200\001\"a\n\032ZhanLin" +
      "gExpBuyLevelRequest\022\017\n\007type_id\030\001 \001(\005\022\021\n\t" +
      "buy_level\030\002 \001(\005\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n" +
      "\002ID\020\207\227\200\001\"\221\001\n\033ZhanLingExpBuyLevelResponse" +
      "\022\017\n\007type_id\030\001 \001(\005\022\r\n\005level\030\002 \001(\005\022\026\n\016free" +
      "_reward_lv\030\003 \001(\005\022\031\n\021premium_reward_lv\030\004 " +
      "\001(\005\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\207\227\200\001\"I\n\025" +
      "ZhanLingExpCfgRequest\022\017\n\007type_id\030\001 \001(\005\"\037" +
      "\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\210\227\200\001\"n\n\026ZhanL" +
      "ingExpCfgResponse\022\017\n\007type_id\030\001 \001(\005\022\"\n\004cf" +
      "gs\030\002 \003(\0132\024.pb.PbZhanLingExpCfg\"\037\n\005Proto\022" +
      "\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\210\227\200\001\"\220\001\n\032ZhanLingExpR" +
      "echargeMessage\022\017\n\007type_id\030\001 \001(\005\022\r\n\005level" +
      "\030\002 \001(\005\022\026\n\016free_reward_lv\030\003 \001(\005\022\031\n\021premiu" +
      "m_reward_lv\030\004 \001(\005\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022" +
      "\t\n\002ID\020\211\227\200\001\"\234\001\n\020PbZhanLingExpCfg\022\r\n\005level" +
      "\030\001 \001(\005\022\020\n\010need_exp\030\002 \001(\005\022\037\n\013free_reward\030" +
      "\003 \003(\0132\n.pb.PbItem\022\"\n\016premium_reward\030\004 \003(" +
      "\0132\n.pb.PbItem\022\"\n\016buy_level_cost\030\005 \001(\0132\n." +
      "pb.PbItemB9\n\037pb.xiugou.x1.protobuf.promo" +
      "tion\252\002\025pb.xiugou.x1.protobufb\006proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.getDescriptor(),
        });
    internal_static_pb_ZhanLingExpInfoRequest_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_pb_ZhanLingExpInfoRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpInfoRequest_descriptor,
        new java.lang.String[] { "TypeId", });
    internal_static_pb_ZhanLingExpInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_pb_ZhanLingExpInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpInfoResponse_descriptor,
        new java.lang.String[] { "TypeId", "Level", "Exp", "FreeRewardLv", "PremiumRewardLv", "BuyPremium", });
    internal_static_pb_ZhanLingExpRewardRequest_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_pb_ZhanLingExpRewardRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpRewardRequest_descriptor,
        new java.lang.String[] { "TypeId", });
    internal_static_pb_ZhanLingExpRewardResponse_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_pb_ZhanLingExpRewardResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpRewardResponse_descriptor,
        new java.lang.String[] { "TypeId", "FreeRewardLv", "PremiumRewardLv", });
    internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_pb_ZhanLingExpBuyLevelRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpBuyLevelRequest_descriptor,
        new java.lang.String[] { "TypeId", "BuyLevel", });
    internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_pb_ZhanLingExpBuyLevelResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpBuyLevelResponse_descriptor,
        new java.lang.String[] { "TypeId", "Level", "FreeRewardLv", "PremiumRewardLv", });
    internal_static_pb_ZhanLingExpCfgRequest_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_pb_ZhanLingExpCfgRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpCfgRequest_descriptor,
        new java.lang.String[] { "TypeId", });
    internal_static_pb_ZhanLingExpCfgResponse_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_pb_ZhanLingExpCfgResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpCfgResponse_descriptor,
        new java.lang.String[] { "TypeId", "Cfgs", });
    internal_static_pb_ZhanLingExpRechargeMessage_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_pb_ZhanLingExpRechargeMessage_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ZhanLingExpRechargeMessage_descriptor,
        new java.lang.String[] { "TypeId", "Level", "FreeRewardLv", "PremiumRewardLv", });
    internal_static_pb_PbZhanLingExpCfg_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_pb_PbZhanLingExpCfg_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbZhanLingExpCfg_descriptor,
        new java.lang.String[] { "Level", "NeedExp", "FreeReward", "PremiumReward", "BuyLevelCost", });
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
