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

package pb.xiugou.x1.protobuf.mainline;

public final class Mainline {
  private Mainline() {}
  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 MainlineInfoResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineInfoResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> 
        getScenesList();
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getScenes(int index);
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    int getScenesCount();
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> 
        getScenesOrBuilderList();
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getScenesOrBuilder(
        int index);

    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 2;</code>
     * @return The nextBoxTime.
     */
    long getNextBoxTime();

    /**
     * <pre>
     *已进行的高级修行次数
     * </pre>
     *
     * <code>int32 camp_adv_num = 3;</code>
     * @return The campAdvNum.
     */
    int getCampAdvNum();

    /**
     * <pre>
     *离线挂机的BossID
     * </pre>
     *
     * <code>int32 hang_boss_id = 4;</code>
     * @return The hangBossId.
     */
    int getHangBossId();

    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     * @return Whether the task field is set.
     */
    boolean hasTask();
    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     * @return The task.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask();
    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder();
  }
  /**
   * <pre>
   *主线数据
   * </pre>
   *
   * Protobuf type {@code pb.MainlineInfoResponse}
   */
  public  static final class MainlineInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineInfoResponse)
      MainlineInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineInfoResponse.newBuilder() to construct.
    private MainlineInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineInfoResponse() {
      scenes_ = java.util.Collections.emptyList();
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineInfoResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                scenes_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene>();
                mutable_bitField0_ |= 0x00000001;
              }
              scenes_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.parser(), extensionRegistry));
              break;
            }
            case 16: {

              nextBoxTime_ = input.readInt64();
              break;
            }
            case 24: {

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

              hangBossId_ = input.readInt32();
              break;
            }
            case 42: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder subBuilder = null;
              if (task_ != null) {
                subBuilder = task_.toBuilder();
              }
              task_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(task_);
                task_ = 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)) {
          scenes_ = java.util.Collections.unmodifiableList(scenes_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.Builder.class);
    }

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

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


      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 400001: 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.mainline.Mainline.MainlineInfoResponse.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.MainlineInfoResponse.Proto)
    }

    public static final int SCENES_FIELD_NUMBER = 1;
    private java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> scenes_;
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> getScenesList() {
      return scenes_;
    }
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> 
        getScenesOrBuilderList() {
      return scenes_;
    }
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    public int getScenesCount() {
      return scenes_.size();
    }
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getScenes(int index) {
      return scenes_.get(index);
    }
    /**
     * <pre>
     *场景数据
     * </pre>
     *
     * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getScenesOrBuilder(
        int index) {
      return scenes_.get(index);
    }

    public static final int NEXT_BOX_TIME_FIELD_NUMBER = 2;
    private long nextBoxTime_;
    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 2;</code>
     * @return The nextBoxTime.
     */
    public long getNextBoxTime() {
      return nextBoxTime_;
    }

    public static final int CAMP_ADV_NUM_FIELD_NUMBER = 3;
    private int campAdvNum_;
    /**
     * <pre>
     *已进行的高级修行次数
     * </pre>
     *
     * <code>int32 camp_adv_num = 3;</code>
     * @return The campAdvNum.
     */
    public int getCampAdvNum() {
      return campAdvNum_;
    }

    public static final int HANG_BOSS_ID_FIELD_NUMBER = 4;
    private int hangBossId_;
    /**
     * <pre>
     *离线挂机的BossID
     * </pre>
     *
     * <code>int32 hang_boss_id = 4;</code>
     * @return The hangBossId.
     */
    public int getHangBossId() {
      return hangBossId_;
    }

    public static final int TASK_FIELD_NUMBER = 5;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask task_;
    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     * @return Whether the task field is set.
     */
    public boolean hasTask() {
      return task_ != null;
    }
    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     * @return The task.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask() {
      return task_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
    }
    /**
     * <pre>
     *当前正在做的任务
     * </pre>
     *
     * <code>.pb.PbTask task = 5;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder() {
      return getTask();
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < scenes_.size(); i++) {
        output.writeMessage(1, scenes_.get(i));
      }
      if (nextBoxTime_ != 0L) {
        output.writeInt64(2, nextBoxTime_);
      }
      if (campAdvNum_ != 0) {
        output.writeInt32(3, campAdvNum_);
      }
      if (hangBossId_ != 0) {
        output.writeInt32(4, hangBossId_);
      }
      if (task_ != null) {
        output.writeMessage(5, getTask());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      for (int i = 0; i < scenes_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, scenes_.get(i));
      }
      if (nextBoxTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, nextBoxTime_);
      }
      if (campAdvNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, campAdvNum_);
      }
      if (hangBossId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, hangBossId_);
      }
      if (task_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, getTask());
      }
      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.mainline.Mainline.MainlineInfoResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse) obj;

      if (!getScenesList()
          .equals(other.getScenesList())) return false;
      if (getNextBoxTime()
          != other.getNextBoxTime()) return false;
      if (getCampAdvNum()
          != other.getCampAdvNum()) return false;
      if (getHangBossId()
          != other.getHangBossId()) return false;
      if (hasTask() != other.hasTask()) return false;
      if (hasTask()) {
        if (!getTask()
            .equals(other.getTask())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getScenesCount() > 0) {
        hash = (37 * hash) + SCENES_FIELD_NUMBER;
        hash = (53 * hash) + getScenesList().hashCode();
      }
      hash = (37 * hash) + NEXT_BOX_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getNextBoxTime());
      hash = (37 * hash) + CAMP_ADV_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getCampAdvNum();
      hash = (37 * hash) + HANG_BOSS_ID_FIELD_NUMBER;
      hash = (53 * hash) + getHangBossId();
      if (hasTask()) {
        hash = (37 * hash) + TASK_FIELD_NUMBER;
        hash = (53 * hash) + getTask().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse 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.mainline.Mainline.MainlineInfoResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse 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.mainline.Mainline.MainlineInfoResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse 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.mainline.Mainline.MainlineInfoResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse 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.mainline.Mainline.MainlineInfoResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse 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.mainline.Mainline.MainlineInfoResponse 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.MainlineInfoResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineInfoResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineInfoResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getScenesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (scenesBuilder_ == null) {
          scenes_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          scenesBuilder_.clear();
        }
        nextBoxTime_ = 0L;

        campAdvNum_ = 0;

        hangBossId_ = 0;

        if (taskBuilder_ == null) {
          task_ = null;
        } else {
          task_ = null;
          taskBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse(this);
        int from_bitField0_ = bitField0_;
        if (scenesBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            scenes_ = java.util.Collections.unmodifiableList(scenes_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.scenes_ = scenes_;
        } else {
          result.scenes_ = scenesBuilder_.build();
        }
        result.nextBoxTime_ = nextBoxTime_;
        result.campAdvNum_ = campAdvNum_;
        result.hangBossId_ = hangBossId_;
        if (taskBuilder_ == null) {
          result.task_ = task_;
        } else {
          result.task_ = taskBuilder_.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.mainline.Mainline.MainlineInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse.getDefaultInstance()) return this;
        if (scenesBuilder_ == null) {
          if (!other.scenes_.isEmpty()) {
            if (scenes_.isEmpty()) {
              scenes_ = other.scenes_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureScenesIsMutable();
              scenes_.addAll(other.scenes_);
            }
            onChanged();
          }
        } else {
          if (!other.scenes_.isEmpty()) {
            if (scenesBuilder_.isEmpty()) {
              scenesBuilder_.dispose();
              scenesBuilder_ = null;
              scenes_ = other.scenes_;
              bitField0_ = (bitField0_ & ~0x00000001);
              scenesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getScenesFieldBuilder() : null;
            } else {
              scenesBuilder_.addAllMessages(other.scenes_);
            }
          }
        }
        if (other.getNextBoxTime() != 0L) {
          setNextBoxTime(other.getNextBoxTime());
        }
        if (other.getCampAdvNum() != 0) {
          setCampAdvNum(other.getCampAdvNum());
        }
        if (other.getHangBossId() != 0) {
          setHangBossId(other.getHangBossId());
        }
        if (other.hasTask()) {
          mergeTask(other.getTask());
        }
        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.mainline.Mainline.MainlineInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> scenes_ =
        java.util.Collections.emptyList();
      private void ensureScenesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          scenes_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene>(scenes_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> scenesBuilder_;

      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> getScenesList() {
        if (scenesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(scenes_);
        } else {
          return scenesBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public int getScenesCount() {
        if (scenesBuilder_ == null) {
          return scenes_.size();
        } else {
          return scenesBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getScenes(int index) {
        if (scenesBuilder_ == null) {
          return scenes_.get(index);
        } else {
          return scenesBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder setScenes(
          int index, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene value) {
        if (scenesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureScenesIsMutable();
          scenes_.set(index, value);
          onChanged();
        } else {
          scenesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder setScenes(
          int index, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder builderForValue) {
        if (scenesBuilder_ == null) {
          ensureScenesIsMutable();
          scenes_.set(index, builderForValue.build());
          onChanged();
        } else {
          scenesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder addScenes(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene value) {
        if (scenesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureScenesIsMutable();
          scenes_.add(value);
          onChanged();
        } else {
          scenesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder addScenes(
          int index, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene value) {
        if (scenesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureScenesIsMutable();
          scenes_.add(index, value);
          onChanged();
        } else {
          scenesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder addScenes(
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder builderForValue) {
        if (scenesBuilder_ == null) {
          ensureScenesIsMutable();
          scenes_.add(builderForValue.build());
          onChanged();
        } else {
          scenesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder addScenes(
          int index, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder builderForValue) {
        if (scenesBuilder_ == null) {
          ensureScenesIsMutable();
          scenes_.add(index, builderForValue.build());
          onChanged();
        } else {
          scenesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder addAllScenes(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene> values) {
        if (scenesBuilder_ == null) {
          ensureScenesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, scenes_);
          onChanged();
        } else {
          scenesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder clearScenes() {
        if (scenesBuilder_ == null) {
          scenes_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          scenesBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public Builder removeScenes(int index) {
        if (scenesBuilder_ == null) {
          ensureScenesIsMutable();
          scenes_.remove(index);
          onChanged();
        } else {
          scenesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder getScenesBuilder(
          int index) {
        return getScenesFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getScenesOrBuilder(
          int index) {
        if (scenesBuilder_ == null) {
          return scenes_.get(index);  } else {
          return scenesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> 
           getScenesOrBuilderList() {
        if (scenesBuilder_ != null) {
          return scenesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(scenes_);
        }
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder addScenesBuilder() {
        return getScenesFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance());
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder addScenesBuilder(
          int index) {
        return getScenesFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance());
      }
      /**
       * <pre>
       *场景数据
       * </pre>
       *
       * <code>repeated .pb.PbMainlineScene scenes = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder> 
           getScenesBuilderList() {
        return getScenesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> 
          getScenesFieldBuilder() {
        if (scenesBuilder_ == null) {
          scenesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder>(
                  scenes_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          scenes_ = null;
        }
        return scenesBuilder_;
      }

      private long nextBoxTime_ ;
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 2;</code>
       * @return The nextBoxTime.
       */
      public long getNextBoxTime() {
        return nextBoxTime_;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 2;</code>
       * @param value The nextBoxTime to set.
       * @return This builder for chaining.
       */
      public Builder setNextBoxTime(long value) {
        
        nextBoxTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearNextBoxTime() {
        
        nextBoxTime_ = 0L;
        onChanged();
        return this;
      }

      private int campAdvNum_ ;
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 3;</code>
       * @return The campAdvNum.
       */
      public int getCampAdvNum() {
        return campAdvNum_;
      }
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 3;</code>
       * @param value The campAdvNum to set.
       * @return This builder for chaining.
       */
      public Builder setCampAdvNum(int value) {
        
        campAdvNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearCampAdvNum() {
        
        campAdvNum_ = 0;
        onChanged();
        return this;
      }

      private int hangBossId_ ;
      /**
       * <pre>
       *离线挂机的BossID
       * </pre>
       *
       * <code>int32 hang_boss_id = 4;</code>
       * @return The hangBossId.
       */
      public int getHangBossId() {
        return hangBossId_;
      }
      /**
       * <pre>
       *离线挂机的BossID
       * </pre>
       *
       * <code>int32 hang_boss_id = 4;</code>
       * @param value The hangBossId to set.
       * @return This builder for chaining.
       */
      public Builder setHangBossId(int value) {
        
        hangBossId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *离线挂机的BossID
       * </pre>
       *
       * <code>int32 hang_boss_id = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearHangBossId() {
        
        hangBossId_ = 0;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask task_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder> taskBuilder_;
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       * @return Whether the task field is set.
       */
      public boolean hasTask() {
        return taskBuilder_ != null || task_ != null;
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       * @return The task.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask() {
        if (taskBuilder_ == null) {
          return task_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
        } else {
          return taskBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public Builder setTask(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask value) {
        if (taskBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          task_ = value;
          onChanged();
        } else {
          taskBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public Builder setTask(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder builderForValue) {
        if (taskBuilder_ == null) {
          task_ = builderForValue.build();
          onChanged();
        } else {
          taskBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public Builder mergeTask(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask value) {
        if (taskBuilder_ == null) {
          if (task_ != null) {
            task_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.newBuilder(task_).mergeFrom(value).buildPartial();
          } else {
            task_ = value;
          }
          onChanged();
        } else {
          taskBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public Builder clearTask() {
        if (taskBuilder_ == null) {
          task_ = null;
          onChanged();
        } else {
          task_ = null;
          taskBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder getTaskBuilder() {
        
        onChanged();
        return getTaskFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder() {
        if (taskBuilder_ != null) {
          return taskBuilder_.getMessageOrBuilder();
        } else {
          return task_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
        }
      }
      /**
       * <pre>
       *当前正在做的任务
       * </pre>
       *
       * <code>.pb.PbTask task = 5;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder> 
          getTaskFieldBuilder() {
        if (taskBuilder_ == null) {
          taskBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder>(
                  getTask(),
                  getParentForChildren(),
                  isClean());
          task_ = null;
        }
        return taskBuilder_;
      }
      @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.MainlineInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineInfoResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *迷雾ID
     * </pre>
     *
     * <code>int32 fog_id = 1;</code>
     * @return The fogId.
     */
    int getFogId();
  }
  /**
   * <pre>
   *场景迷雾解锁
   * </pre>
   *
   * Protobuf type {@code pb.MainlineFogOpenRequest}
   */
  public  static final class MainlineFogOpenRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineFogOpenRequest)
      MainlineFogOpenRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineFogOpenRequest.newBuilder() to construct.
    private MainlineFogOpenRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineFogOpenRequest() {
    }

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

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

              fogId_ = 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.mainline.Mainline.internal_static_pb_MainlineFogOpenRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.Builder.class);
    }

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

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


      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 400004: 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.mainline.Mainline.MainlineFogOpenRequest.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.MainlineFogOpenRequest.Proto)
    }

    public static final int FOG_ID_FIELD_NUMBER = 1;
    private int fogId_;
    /**
     * <pre>
     *迷雾ID
     * </pre>
     *
     * <code>int32 fog_id = 1;</code>
     * @return The fogId.
     */
    public int getFogId() {
      return fogId_;
    }

    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 (fogId_ != 0) {
        output.writeInt32(1, fogId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (fogId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, fogId_);
      }
      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.mainline.Mainline.MainlineFogOpenRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest) obj;

      if (getFogId()
          != other.getFogId()) 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) + FOG_ID_FIELD_NUMBER;
      hash = (53 * hash) + getFogId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest 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.mainline.Mainline.MainlineFogOpenRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest 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.mainline.Mainline.MainlineFogOpenRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest 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.mainline.Mainline.MainlineFogOpenRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest 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.mainline.Mainline.MainlineFogOpenRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest 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.mainline.Mainline.MainlineFogOpenRequest 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.MainlineFogOpenRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineFogOpenRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.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();
        fogId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest(this);
        result.fogId_ = fogId_;
        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.mainline.Mainline.MainlineFogOpenRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest.getDefaultInstance()) return this;
        if (other.getFogId() != 0) {
          setFogId(other.getFogId());
        }
        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.mainline.Mainline.MainlineFogOpenRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int fogId_ ;
      /**
       * <pre>
       *迷雾ID
       * </pre>
       *
       * <code>int32 fog_id = 1;</code>
       * @return The fogId.
       */
      public int getFogId() {
        return fogId_;
      }
      /**
       * <pre>
       *迷雾ID
       * </pre>
       *
       * <code>int32 fog_id = 1;</code>
       * @param value The fogId to set.
       * @return This builder for chaining.
       */
      public Builder setFogId(int value) {
        
        fogId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *迷雾ID
       * </pre>
       *
       * <code>int32 fog_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearFogId() {
        
        fogId_ = 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.MainlineFogOpenRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineFogOpenRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *成功解锁的区域ID，为0时表示只开启了一部分
     * </pre>
     *
     * <code>int32 unlock_fog = 1;</code>
     * @return The unlockFog.
     */
    int getUnlockFog();

    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     * @return Whether the openingFog field is set.
     */
    boolean hasOpeningFog();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     * @return The openingFog.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFog();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogOrBuilder();
  }
  /**
   * Protobuf type {@code pb.MainlineFogOpenResponse}
   */
  public  static final class MainlineFogOpenResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineFogOpenResponse)
      MainlineFogOpenResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineFogOpenResponse.newBuilder() to construct.
    private MainlineFogOpenResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineFogOpenResponse() {
    }

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

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

              unlockFog_ = input.readInt32();
              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder subBuilder = null;
              if (openingFog_ != null) {
                subBuilder = openingFog_.toBuilder();
              }
              openingFog_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(openingFog_);
                openingFog_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.Builder.class);
    }

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

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


      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 400004: 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.mainline.Mainline.MainlineFogOpenResponse.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.MainlineFogOpenResponse.Proto)
    }

    public static final int UNLOCK_FOG_FIELD_NUMBER = 1;
    private int unlockFog_;
    /**
     * <pre>
     *成功解锁的区域ID，为0时表示只开启了一部分
     * </pre>
     *
     * <code>int32 unlock_fog = 1;</code>
     * @return The unlockFog.
     */
    public int getUnlockFog() {
      return unlockFog_;
    }

    public static final int OPENING_FOG_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingFog_;
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     * @return Whether the openingFog field is set.
     */
    public boolean hasOpeningFog() {
      return openingFog_ != null;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     * @return The openingFog.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFog() {
      return openingFog_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingFog_;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_fog = 2;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogOrBuilder() {
      return getOpeningFog();
    }

    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 (unlockFog_ != 0) {
        output.writeInt32(1, unlockFog_);
      }
      if (openingFog_ != null) {
        output.writeMessage(2, getOpeningFog());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (unlockFog_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, unlockFog_);
      }
      if (openingFog_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getOpeningFog());
      }
      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.mainline.Mainline.MainlineFogOpenResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse) obj;

      if (getUnlockFog()
          != other.getUnlockFog()) return false;
      if (hasOpeningFog() != other.hasOpeningFog()) return false;
      if (hasOpeningFog()) {
        if (!getOpeningFog()
            .equals(other.getOpeningFog())) 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) + UNLOCK_FOG_FIELD_NUMBER;
      hash = (53 * hash) + getUnlockFog();
      if (hasOpeningFog()) {
        hash = (37 * hash) + OPENING_FOG_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningFog().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse 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.mainline.Mainline.MainlineFogOpenResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse 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.mainline.Mainline.MainlineFogOpenResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse 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.mainline.Mainline.MainlineFogOpenResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse 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.mainline.Mainline.MainlineFogOpenResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse 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.mainline.Mainline.MainlineFogOpenResponse 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.MainlineFogOpenResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineFogOpenResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.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();
        unlockFog_ = 0;

        if (openingFogBuilder_ == null) {
          openingFog_ = null;
        } else {
          openingFog_ = null;
          openingFogBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineFogOpenResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse(this);
        result.unlockFog_ = unlockFog_;
        if (openingFogBuilder_ == null) {
          result.openingFog_ = openingFog_;
        } else {
          result.openingFog_ = openingFogBuilder_.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.mainline.Mainline.MainlineFogOpenResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse.getDefaultInstance()) return this;
        if (other.getUnlockFog() != 0) {
          setUnlockFog(other.getUnlockFog());
        }
        if (other.hasOpeningFog()) {
          mergeOpeningFog(other.getOpeningFog());
        }
        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.mainline.Mainline.MainlineFogOpenResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int unlockFog_ ;
      /**
       * <pre>
       *成功解锁的区域ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_fog = 1;</code>
       * @return The unlockFog.
       */
      public int getUnlockFog() {
        return unlockFog_;
      }
      /**
       * <pre>
       *成功解锁的区域ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_fog = 1;</code>
       * @param value The unlockFog to set.
       * @return This builder for chaining.
       */
      public Builder setUnlockFog(int value) {
        
        unlockFog_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *成功解锁的区域ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_fog = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearUnlockFog() {
        
        unlockFog_ = 0;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingFog_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingFogBuilder_;
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       * @return Whether the openingFog field is set.
       */
      public boolean hasOpeningFog() {
        return openingFogBuilder_ != null || openingFog_ != null;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       * @return The openingFog.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFog() {
        if (openingFogBuilder_ == null) {
          return openingFog_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingFog_;
        } else {
          return openingFogBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public Builder setOpeningFog(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingFogBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          openingFog_ = value;
          onChanged();
        } else {
          openingFogBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public Builder setOpeningFog(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingFogBuilder_ == null) {
          openingFog_ = builderForValue.build();
          onChanged();
        } else {
          openingFogBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public Builder mergeOpeningFog(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingFogBuilder_ == null) {
          if (openingFog_ != null) {
            openingFog_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.newBuilder(openingFog_).mergeFrom(value).buildPartial();
          } else {
            openingFog_ = value;
          }
          onChanged();
        } else {
          openingFogBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public Builder clearOpeningFog() {
        if (openingFogBuilder_ == null) {
          openingFog_ = null;
          onChanged();
        } else {
          openingFog_ = null;
          openingFogBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningFogBuilder() {
        
        onChanged();
        return getOpeningFogFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogOrBuilder() {
        if (openingFogBuilder_ != null) {
          return openingFogBuilder_.getMessageOrBuilder();
        } else {
          return openingFog_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingFog_;
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_fog = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningFogFieldBuilder() {
        if (openingFogBuilder_ == null) {
          openingFogBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  getOpeningFog(),
                  getParentForChildren(),
                  isClean());
          openingFog_ = null;
        }
        return openingFogBuilder_;
      }
      @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.MainlineFogOpenResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineFogOpenResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineFogOpenResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *传送点ID
     * </pre>
     *
     * <code>int32 teleport_id = 1;</code>
     * @return The teleportId.
     */
    int getTeleportId();
  }
  /**
   * <pre>
   *传送点解锁
   * </pre>
   *
   * Protobuf type {@code pb.MainlineTeleportOpenRequest}
   */
  public  static final class MainlineTeleportOpenRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTeleportOpenRequest)
      MainlineTeleportOpenRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTeleportOpenRequest.newBuilder() to construct.
    private MainlineTeleportOpenRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTeleportOpenRequest() {
    }

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

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

              teleportId_ = 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.mainline.Mainline.internal_static_pb_MainlineTeleportOpenRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.Builder.class);
    }

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

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


      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 400005: 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.mainline.Mainline.MainlineTeleportOpenRequest.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.MainlineTeleportOpenRequest.Proto)
    }

    public static final int TELEPORT_ID_FIELD_NUMBER = 1;
    private int teleportId_;
    /**
     * <pre>
     *传送点ID
     * </pre>
     *
     * <code>int32 teleport_id = 1;</code>
     * @return The teleportId.
     */
    public int getTeleportId() {
      return teleportId_;
    }

    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 (teleportId_ != 0) {
        output.writeInt32(1, teleportId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (teleportId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, teleportId_);
      }
      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.mainline.Mainline.MainlineTeleportOpenRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest) obj;

      if (getTeleportId()
          != other.getTeleportId()) 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) + TELEPORT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTeleportId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest 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.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest 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.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest 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.mainline.Mainline.MainlineTeleportOpenRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest 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.mainline.Mainline.MainlineTeleportOpenRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest 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.mainline.Mainline.MainlineTeleportOpenRequest 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.MainlineTeleportOpenRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTeleportOpenRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.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();
        teleportId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest(this);
        result.teleportId_ = teleportId_;
        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.mainline.Mainline.MainlineTeleportOpenRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest.getDefaultInstance()) return this;
        if (other.getTeleportId() != 0) {
          setTeleportId(other.getTeleportId());
        }
        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.mainline.Mainline.MainlineTeleportOpenRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int teleportId_ ;
      /**
       * <pre>
       *传送点ID
       * </pre>
       *
       * <code>int32 teleport_id = 1;</code>
       * @return The teleportId.
       */
      public int getTeleportId() {
        return teleportId_;
      }
      /**
       * <pre>
       *传送点ID
       * </pre>
       *
       * <code>int32 teleport_id = 1;</code>
       * @param value The teleportId to set.
       * @return This builder for chaining.
       */
      public Builder setTeleportId(int value) {
        
        teleportId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *传送点ID
       * </pre>
       *
       * <code>int32 teleport_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTeleportId() {
        
        teleportId_ = 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.MainlineTeleportOpenRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTeleportOpenRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *成功解锁的传送点ID，为0时表示只开启了一部分
     * </pre>
     *
     * <code>int32 unlock_teleport = 1;</code>
     * @return The unlockTeleport.
     */
    int getUnlockTeleport();

    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     * @return Whether the openingTeleport field is set.
     */
    boolean hasOpeningTeleport();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     * @return The openingTeleport.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleport();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportOrBuilder();
  }
  /**
   * Protobuf type {@code pb.MainlineTeleportOpenResponse}
   */
  public  static final class MainlineTeleportOpenResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTeleportOpenResponse)
      MainlineTeleportOpenResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTeleportOpenResponse.newBuilder() to construct.
    private MainlineTeleportOpenResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTeleportOpenResponse() {
    }

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

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

              unlockTeleport_ = input.readInt32();
              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder subBuilder = null;
              if (openingTeleport_ != null) {
                subBuilder = openingTeleport_.toBuilder();
              }
              openingTeleport_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(openingTeleport_);
                openingTeleport_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.Builder.class);
    }

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

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


      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 400005: 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.mainline.Mainline.MainlineTeleportOpenResponse.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.MainlineTeleportOpenResponse.Proto)
    }

    public static final int UNLOCK_TELEPORT_FIELD_NUMBER = 1;
    private int unlockTeleport_;
    /**
     * <pre>
     *成功解锁的传送点ID，为0时表示只开启了一部分
     * </pre>
     *
     * <code>int32 unlock_teleport = 1;</code>
     * @return The unlockTeleport.
     */
    public int getUnlockTeleport() {
      return unlockTeleport_;
    }

    public static final int OPENING_TELEPORT_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingTeleport_;
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     * @return Whether the openingTeleport field is set.
     */
    public boolean hasOpeningTeleport() {
      return openingTeleport_ != null;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     * @return The openingTeleport.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleport() {
      return openingTeleport_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingTeleport_;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportOrBuilder() {
      return getOpeningTeleport();
    }

    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 (unlockTeleport_ != 0) {
        output.writeInt32(1, unlockTeleport_);
      }
      if (openingTeleport_ != null) {
        output.writeMessage(2, getOpeningTeleport());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (unlockTeleport_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, unlockTeleport_);
      }
      if (openingTeleport_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getOpeningTeleport());
      }
      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.mainline.Mainline.MainlineTeleportOpenResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse) obj;

      if (getUnlockTeleport()
          != other.getUnlockTeleport()) return false;
      if (hasOpeningTeleport() != other.hasOpeningTeleport()) return false;
      if (hasOpeningTeleport()) {
        if (!getOpeningTeleport()
            .equals(other.getOpeningTeleport())) 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) + UNLOCK_TELEPORT_FIELD_NUMBER;
      hash = (53 * hash) + getUnlockTeleport();
      if (hasOpeningTeleport()) {
        hash = (37 * hash) + OPENING_TELEPORT_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningTeleport().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse 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.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse 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.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse 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.mainline.Mainline.MainlineTeleportOpenResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse 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.mainline.Mainline.MainlineTeleportOpenResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse 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.mainline.Mainline.MainlineTeleportOpenResponse 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.MainlineTeleportOpenResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTeleportOpenResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.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();
        unlockTeleport_ = 0;

        if (openingTeleportBuilder_ == null) {
          openingTeleport_ = null;
        } else {
          openingTeleport_ = null;
          openingTeleportBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTeleportOpenResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse(this);
        result.unlockTeleport_ = unlockTeleport_;
        if (openingTeleportBuilder_ == null) {
          result.openingTeleport_ = openingTeleport_;
        } else {
          result.openingTeleport_ = openingTeleportBuilder_.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.mainline.Mainline.MainlineTeleportOpenResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse.getDefaultInstance()) return this;
        if (other.getUnlockTeleport() != 0) {
          setUnlockTeleport(other.getUnlockTeleport());
        }
        if (other.hasOpeningTeleport()) {
          mergeOpeningTeleport(other.getOpeningTeleport());
        }
        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.mainline.Mainline.MainlineTeleportOpenResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int unlockTeleport_ ;
      /**
       * <pre>
       *成功解锁的传送点ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_teleport = 1;</code>
       * @return The unlockTeleport.
       */
      public int getUnlockTeleport() {
        return unlockTeleport_;
      }
      /**
       * <pre>
       *成功解锁的传送点ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_teleport = 1;</code>
       * @param value The unlockTeleport to set.
       * @return This builder for chaining.
       */
      public Builder setUnlockTeleport(int value) {
        
        unlockTeleport_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *成功解锁的传送点ID，为0时表示只开启了一部分
       * </pre>
       *
       * <code>int32 unlock_teleport = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearUnlockTeleport() {
        
        unlockTeleport_ = 0;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingTeleport_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingTeleportBuilder_;
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       * @return Whether the openingTeleport field is set.
       */
      public boolean hasOpeningTeleport() {
        return openingTeleportBuilder_ != null || openingTeleport_ != null;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       * @return The openingTeleport.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleport() {
        if (openingTeleportBuilder_ == null) {
          return openingTeleport_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingTeleport_;
        } else {
          return openingTeleportBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public Builder setOpeningTeleport(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingTeleportBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          openingTeleport_ = value;
          onChanged();
        } else {
          openingTeleportBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public Builder setOpeningTeleport(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingTeleportBuilder_ == null) {
          openingTeleport_ = builderForValue.build();
          onChanged();
        } else {
          openingTeleportBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public Builder mergeOpeningTeleport(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingTeleportBuilder_ == null) {
          if (openingTeleport_ != null) {
            openingTeleport_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.newBuilder(openingTeleport_).mergeFrom(value).buildPartial();
          } else {
            openingTeleport_ = value;
          }
          onChanged();
        } else {
          openingTeleportBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public Builder clearOpeningTeleport() {
        if (openingTeleportBuilder_ == null) {
          openingTeleport_ = null;
          onChanged();
        } else {
          openingTeleport_ = null;
          openingTeleportBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningTeleportBuilder() {
        
        onChanged();
        return getOpeningTeleportFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportOrBuilder() {
        if (openingTeleportBuilder_ != null) {
          return openingTeleportBuilder_.getMessageOrBuilder();
        } else {
          return openingTeleport_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingTeleport_;
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_teleport = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningTeleportFieldBuilder() {
        if (openingTeleportBuilder_ == null) {
          openingTeleportBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  getOpeningTeleport(),
                  getParentForChildren(),
                  isClean());
          openingTeleport_ = null;
        }
        return openingTeleportBuilder_;
      }
      @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.MainlineTeleportOpenResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTeleportOpenResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTeleportOpenResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *npc
     * </pre>
     *
     * <code>int32 npc_id = 1;</code>
     * @return The npcId.
     */
    int getNpcId();
  }
  /**
   * <pre>
   *野外npc素材缴纳
   * </pre>
   *
   * Protobuf type {@code pb.MainlineNpcOpenRequest}
   */
  public  static final class MainlineNpcOpenRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineNpcOpenRequest)
      MainlineNpcOpenRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineNpcOpenRequest.newBuilder() to construct.
    private MainlineNpcOpenRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineNpcOpenRequest() {
    }

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

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

              npcId_ = 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.mainline.Mainline.internal_static_pb_MainlineNpcOpenRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.Builder.class);
    }

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

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


      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 400006: 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.mainline.Mainline.MainlineNpcOpenRequest.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.MainlineNpcOpenRequest.Proto)
    }

    public static final int NPC_ID_FIELD_NUMBER = 1;
    private int npcId_;
    /**
     * <pre>
     *npc
     * </pre>
     *
     * <code>int32 npc_id = 1;</code>
     * @return The npcId.
     */
    public int getNpcId() {
      return npcId_;
    }

    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 (npcId_ != 0) {
        output.writeInt32(1, npcId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (npcId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, npcId_);
      }
      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.mainline.Mainline.MainlineNpcOpenRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest) obj;

      if (getNpcId()
          != other.getNpcId()) 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) + NPC_ID_FIELD_NUMBER;
      hash = (53 * hash) + getNpcId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest 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.mainline.Mainline.MainlineNpcOpenRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest 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.mainline.Mainline.MainlineNpcOpenRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest 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.mainline.Mainline.MainlineNpcOpenRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest 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.mainline.Mainline.MainlineNpcOpenRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest 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.mainline.Mainline.MainlineNpcOpenRequest 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>
     *野外npc素材缴纳
     * </pre>
     *
     * Protobuf type {@code pb.MainlineNpcOpenRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineNpcOpenRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.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();
        npcId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest(this);
        result.npcId_ = npcId_;
        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.mainline.Mainline.MainlineNpcOpenRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest.getDefaultInstance()) return this;
        if (other.getNpcId() != 0) {
          setNpcId(other.getNpcId());
        }
        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.mainline.Mainline.MainlineNpcOpenRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int npcId_ ;
      /**
       * <pre>
       *npc
       * </pre>
       *
       * <code>int32 npc_id = 1;</code>
       * @return The npcId.
       */
      public int getNpcId() {
        return npcId_;
      }
      /**
       * <pre>
       *npc
       * </pre>
       *
       * <code>int32 npc_id = 1;</code>
       * @param value The npcId to set.
       * @return This builder for chaining.
       */
      public Builder setNpcId(int value) {
        
        npcId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *npc
       * </pre>
       *
       * <code>int32 npc_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearNpcId() {
        
        npcId_ = 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.MainlineNpcOpenRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineNpcOpenRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *成功缴纳的npcID，为0时表示只缴纳了一部分
     * </pre>
     *
     * <code>int32 unlock_npc = 1;</code>
     * @return The unlockNpc.
     */
    int getUnlockNpc();

    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     * @return Whether the openingNpc field is set.
     */
    boolean hasOpeningNpc();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     * @return The openingNpc.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpc();
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcOrBuilder();

    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     * @return Whether the receipt field is set.
     */
    boolean hasReceipt();
    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     * @return The receipt.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt();
    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder();
  }
  /**
   * Protobuf type {@code pb.MainlineNpcOpenResponse}
   */
  public  static final class MainlineNpcOpenResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineNpcOpenResponse)
      MainlineNpcOpenResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineNpcOpenResponse.newBuilder() to construct.
    private MainlineNpcOpenResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineNpcOpenResponse() {
    }

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

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

              unlockNpc_ = input.readInt32();
              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder subBuilder = null;
              if (openingNpc_ != null) {
                subBuilder = openingNpc_.toBuilder();
              }
              openingNpc_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(openingNpc_);
                openingNpc_ = subBuilder.buildPartial();
              }

              break;
            }
            case 26: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder subBuilder = null;
              if (receipt_ != null) {
                subBuilder = receipt_.toBuilder();
              }
              receipt_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(receipt_);
                receipt_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.Builder.class);
    }

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

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


      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 400006: 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.mainline.Mainline.MainlineNpcOpenResponse.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.MainlineNpcOpenResponse.Proto)
    }

    public static final int UNLOCK_NPC_FIELD_NUMBER = 1;
    private int unlockNpc_;
    /**
     * <pre>
     *成功缴纳的npcID，为0时表示只缴纳了一部分
     * </pre>
     *
     * <code>int32 unlock_npc = 1;</code>
     * @return The unlockNpc.
     */
    public int getUnlockNpc() {
      return unlockNpc_;
    }

    public static final int OPENING_NPC_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingNpc_;
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     * @return Whether the openingNpc field is set.
     */
    public boolean hasOpeningNpc() {
      return openingNpc_ != null;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     * @return The openingNpc.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpc() {
      return openingNpc_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingNpc_;
    }
    /**
     * <pre>
     *开启进度，需判断空值
     * </pre>
     *
     * <code>.pb.PbSceneOpening opening_npc = 2;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcOrBuilder() {
      return getOpeningNpc();
    }

    public static final int RECEIPT_FIELD_NUMBER = 3;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt receipt_;
    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     * @return Whether the receipt field is set.
     */
    public boolean hasReceipt() {
      return receipt_ != null;
    }
    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     * @return The receipt.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt() {
      return receipt_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
    }
    /**
     * <pre>
     *物品变化回执
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 3;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder() {
      return getReceipt();
    }

    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 (unlockNpc_ != 0) {
        output.writeInt32(1, unlockNpc_);
      }
      if (openingNpc_ != null) {
        output.writeMessage(2, getOpeningNpc());
      }
      if (receipt_ != null) {
        output.writeMessage(3, getReceipt());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (unlockNpc_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, unlockNpc_);
      }
      if (openingNpc_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getOpeningNpc());
      }
      if (receipt_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getReceipt());
      }
      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.mainline.Mainline.MainlineNpcOpenResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse) obj;

      if (getUnlockNpc()
          != other.getUnlockNpc()) return false;
      if (hasOpeningNpc() != other.hasOpeningNpc()) return false;
      if (hasOpeningNpc()) {
        if (!getOpeningNpc()
            .equals(other.getOpeningNpc())) return false;
      }
      if (hasReceipt() != other.hasReceipt()) return false;
      if (hasReceipt()) {
        if (!getReceipt()
            .equals(other.getReceipt())) 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) + UNLOCK_NPC_FIELD_NUMBER;
      hash = (53 * hash) + getUnlockNpc();
      if (hasOpeningNpc()) {
        hash = (37 * hash) + OPENING_NPC_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningNpc().hashCode();
      }
      if (hasReceipt()) {
        hash = (37 * hash) + RECEIPT_FIELD_NUMBER;
        hash = (53 * hash) + getReceipt().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse 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.mainline.Mainline.MainlineNpcOpenResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse 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.mainline.Mainline.MainlineNpcOpenResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse 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.mainline.Mainline.MainlineNpcOpenResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse 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.mainline.Mainline.MainlineNpcOpenResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse 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.mainline.Mainline.MainlineNpcOpenResponse 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.MainlineNpcOpenResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineNpcOpenResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.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();
        unlockNpc_ = 0;

        if (openingNpcBuilder_ == null) {
          openingNpc_ = null;
        } else {
          openingNpc_ = null;
          openingNpcBuilder_ = null;
        }
        if (receiptBuilder_ == null) {
          receipt_ = null;
        } else {
          receipt_ = null;
          receiptBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineNpcOpenResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse(this);
        result.unlockNpc_ = unlockNpc_;
        if (openingNpcBuilder_ == null) {
          result.openingNpc_ = openingNpc_;
        } else {
          result.openingNpc_ = openingNpcBuilder_.build();
        }
        if (receiptBuilder_ == null) {
          result.receipt_ = receipt_;
        } else {
          result.receipt_ = receiptBuilder_.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.mainline.Mainline.MainlineNpcOpenResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse.getDefaultInstance()) return this;
        if (other.getUnlockNpc() != 0) {
          setUnlockNpc(other.getUnlockNpc());
        }
        if (other.hasOpeningNpc()) {
          mergeOpeningNpc(other.getOpeningNpc());
        }
        if (other.hasReceipt()) {
          mergeReceipt(other.getReceipt());
        }
        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.mainline.Mainline.MainlineNpcOpenResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int unlockNpc_ ;
      /**
       * <pre>
       *成功缴纳的npcID，为0时表示只缴纳了一部分
       * </pre>
       *
       * <code>int32 unlock_npc = 1;</code>
       * @return The unlockNpc.
       */
      public int getUnlockNpc() {
        return unlockNpc_;
      }
      /**
       * <pre>
       *成功缴纳的npcID，为0时表示只缴纳了一部分
       * </pre>
       *
       * <code>int32 unlock_npc = 1;</code>
       * @param value The unlockNpc to set.
       * @return This builder for chaining.
       */
      public Builder setUnlockNpc(int value) {
        
        unlockNpc_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *成功缴纳的npcID，为0时表示只缴纳了一部分
       * </pre>
       *
       * <code>int32 unlock_npc = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearUnlockNpc() {
        
        unlockNpc_ = 0;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening openingNpc_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingNpcBuilder_;
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       * @return Whether the openingNpc field is set.
       */
      public boolean hasOpeningNpc() {
        return openingNpcBuilder_ != null || openingNpc_ != null;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       * @return The openingNpc.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpc() {
        if (openingNpcBuilder_ == null) {
          return openingNpc_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingNpc_;
        } else {
          return openingNpcBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public Builder setOpeningNpc(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingNpcBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          openingNpc_ = value;
          onChanged();
        } else {
          openingNpcBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public Builder setOpeningNpc(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingNpcBuilder_ == null) {
          openingNpc_ = builderForValue.build();
          onChanged();
        } else {
          openingNpcBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public Builder mergeOpeningNpc(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingNpcBuilder_ == null) {
          if (openingNpc_ != null) {
            openingNpc_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.newBuilder(openingNpc_).mergeFrom(value).buildPartial();
          } else {
            openingNpc_ = value;
          }
          onChanged();
        } else {
          openingNpcBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public Builder clearOpeningNpc() {
        if (openingNpcBuilder_ == null) {
          openingNpc_ = null;
          onChanged();
        } else {
          openingNpc_ = null;
          openingNpcBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningNpcBuilder() {
        
        onChanged();
        return getOpeningNpcFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcOrBuilder() {
        if (openingNpcBuilder_ != null) {
          return openingNpcBuilder_.getMessageOrBuilder();
        } else {
          return openingNpc_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance() : openingNpc_;
        }
      }
      /**
       * <pre>
       *开启进度，需判断空值
       * </pre>
       *
       * <code>.pb.PbSceneOpening opening_npc = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningNpcFieldBuilder() {
        if (openingNpcBuilder_ == null) {
          openingNpcBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  getOpeningNpc(),
                  getParentForChildren(),
                  isClean());
          openingNpc_ = null;
        }
        return openingNpcBuilder_;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt receipt_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder> receiptBuilder_;
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       * @return Whether the receipt field is set.
       */
      public boolean hasReceipt() {
        return receiptBuilder_ != null || receipt_ != null;
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       * @return The receipt.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt() {
        if (receiptBuilder_ == null) {
          return receipt_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
        } else {
          return receiptBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public Builder setReceipt(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt value) {
        if (receiptBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          receipt_ = value;
          onChanged();
        } else {
          receiptBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public Builder setReceipt(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder builderForValue) {
        if (receiptBuilder_ == null) {
          receipt_ = builderForValue.build();
          onChanged();
        } else {
          receiptBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public Builder mergeReceipt(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt value) {
        if (receiptBuilder_ == null) {
          if (receipt_ != null) {
            receipt_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.newBuilder(receipt_).mergeFrom(value).buildPartial();
          } else {
            receipt_ = value;
          }
          onChanged();
        } else {
          receiptBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public Builder clearReceipt() {
        if (receiptBuilder_ == null) {
          receipt_ = null;
          onChanged();
        } else {
          receipt_ = null;
          receiptBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder getReceiptBuilder() {
        
        onChanged();
        return getReceiptFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder() {
        if (receiptBuilder_ != null) {
          return receiptBuilder_.getMessageOrBuilder();
        } else {
          return receipt_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
        }
      }
      /**
       * <pre>
       *物品变化回执
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 3;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder> 
          getReceiptFieldBuilder() {
        if (receiptBuilder_ == null) {
          receiptBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder>(
                  getReceipt(),
                  getParentForChildren(),
                  isClean());
          receipt_ = null;
        }
        return receiptBuilder_;
      }
      @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.MainlineNpcOpenResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineNpcOpenResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineNpcOpenResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *设置传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    int getPortalX();

    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    int getPortalY();
  }
  /**
   * <pre>
   *设置“回城”传送门
   * </pre>
   *
   * Protobuf type {@code pb.MainlineSetPortalRequest}
   */
  public  static final class MainlineSetPortalRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineSetPortalRequest)
      MainlineSetPortalRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineSetPortalRequest.newBuilder() to construct.
    private MainlineSetPortalRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineSetPortalRequest() {
    }

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

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

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

              portalY_ = 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.mainline.Mainline.internal_static_pb_MainlineSetPortalRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.Builder.class);
    }

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

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


      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 400007: 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.mainline.Mainline.MainlineSetPortalRequest.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.MainlineSetPortalRequest.Proto)
    }

    public static final int PORTAL_X_FIELD_NUMBER = 1;
    private int portalX_;
    /**
     * <pre>
     *设置传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    public int getPortalX() {
      return portalX_;
    }

    public static final int PORTAL_Y_FIELD_NUMBER = 2;
    private int portalY_;
    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    public int getPortalY() {
      return portalY_;
    }

    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 (portalX_ != 0) {
        output.writeInt32(1, portalX_);
      }
      if (portalY_ != 0) {
        output.writeInt32(2, portalY_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (portalX_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, portalX_);
      }
      if (portalY_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, portalY_);
      }
      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.mainline.Mainline.MainlineSetPortalRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest) obj;

      if (getPortalX()
          != other.getPortalX()) return false;
      if (getPortalY()
          != other.getPortalY()) 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) + PORTAL_X_FIELD_NUMBER;
      hash = (53 * hash) + getPortalX();
      hash = (37 * hash) + PORTAL_Y_FIELD_NUMBER;
      hash = (53 * hash) + getPortalY();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest 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.mainline.Mainline.MainlineSetPortalRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest 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.mainline.Mainline.MainlineSetPortalRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest 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.mainline.Mainline.MainlineSetPortalRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest 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.mainline.Mainline.MainlineSetPortalRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest 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.mainline.Mainline.MainlineSetPortalRequest 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.MainlineSetPortalRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineSetPortalRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.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();
        portalX_ = 0;

        portalY_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest(this);
        result.portalX_ = portalX_;
        result.portalY_ = portalY_;
        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.mainline.Mainline.MainlineSetPortalRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest.getDefaultInstance()) return this;
        if (other.getPortalX() != 0) {
          setPortalX(other.getPortalX());
        }
        if (other.getPortalY() != 0) {
          setPortalY(other.getPortalY());
        }
        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.mainline.Mainline.MainlineSetPortalRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int portalX_ ;
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return The portalX.
       */
      public int getPortalX() {
        return portalX_;
      }
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @param value The portalX to set.
       * @return This builder for chaining.
       */
      public Builder setPortalX(int value) {
        
        portalX_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalX() {
        
        portalX_ = 0;
        onChanged();
        return this;
      }

      private int portalY_ ;
      /**
       * <code>int32 portal_y = 2;</code>
       * @return The portalY.
       */
      public int getPortalY() {
        return portalY_;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @param value The portalY to set.
       * @return This builder for chaining.
       */
      public Builder setPortalY(int value) {
        
        portalY_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalY() {
        
        portalY_ = 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.MainlineSetPortalRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineSetPortalRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *设置传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    int getPortalX();

    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    int getPortalY();
  }
  /**
   * Protobuf type {@code pb.MainlineSetPortalResponse}
   */
  public  static final class MainlineSetPortalResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineSetPortalResponse)
      MainlineSetPortalResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineSetPortalResponse.newBuilder() to construct.
    private MainlineSetPortalResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineSetPortalResponse() {
    }

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

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

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

              portalY_ = 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.mainline.Mainline.internal_static_pb_MainlineSetPortalResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.Builder.class);
    }

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

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


      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 400007: 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.mainline.Mainline.MainlineSetPortalResponse.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.MainlineSetPortalResponse.Proto)
    }

    public static final int PORTAL_X_FIELD_NUMBER = 1;
    private int portalX_;
    /**
     * <pre>
     *设置传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    public int getPortalX() {
      return portalX_;
    }

    public static final int PORTAL_Y_FIELD_NUMBER = 2;
    private int portalY_;
    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    public int getPortalY() {
      return portalY_;
    }

    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 (portalX_ != 0) {
        output.writeInt32(1, portalX_);
      }
      if (portalY_ != 0) {
        output.writeInt32(2, portalY_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (portalX_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, portalX_);
      }
      if (portalY_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, portalY_);
      }
      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.mainline.Mainline.MainlineSetPortalResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse) obj;

      if (getPortalX()
          != other.getPortalX()) return false;
      if (getPortalY()
          != other.getPortalY()) 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) + PORTAL_X_FIELD_NUMBER;
      hash = (53 * hash) + getPortalX();
      hash = (37 * hash) + PORTAL_Y_FIELD_NUMBER;
      hash = (53 * hash) + getPortalY();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse 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.mainline.Mainline.MainlineSetPortalResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse 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.mainline.Mainline.MainlineSetPortalResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse 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.mainline.Mainline.MainlineSetPortalResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse 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.mainline.Mainline.MainlineSetPortalResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse 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.mainline.Mainline.MainlineSetPortalResponse 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.MainlineSetPortalResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineSetPortalResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.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();
        portalX_ = 0;

        portalY_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineSetPortalResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse(this);
        result.portalX_ = portalX_;
        result.portalY_ = portalY_;
        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.mainline.Mainline.MainlineSetPortalResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse.getDefaultInstance()) return this;
        if (other.getPortalX() != 0) {
          setPortalX(other.getPortalX());
        }
        if (other.getPortalY() != 0) {
          setPortalY(other.getPortalY());
        }
        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.mainline.Mainline.MainlineSetPortalResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int portalX_ ;
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return The portalX.
       */
      public int getPortalX() {
        return portalX_;
      }
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @param value The portalX to set.
       * @return This builder for chaining.
       */
      public Builder setPortalX(int value) {
        
        portalX_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *设置传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalX() {
        
        portalX_ = 0;
        onChanged();
        return this;
      }

      private int portalY_ ;
      /**
       * <code>int32 portal_y = 2;</code>
       * @return The portalY.
       */
      public int getPortalY() {
        return portalY_;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @param value The portalY to set.
       * @return This builder for chaining.
       */
      public Builder setPortalY(int value) {
        
        portalY_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalY() {
        
        portalY_ = 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.MainlineSetPortalResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineSetPortalResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineSetPortalResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineUsePortalRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineUsePortalRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *使用“回城”传送门
   * </pre>
   *
   * Protobuf type {@code pb.MainlineUsePortalRequest}
   */
  public  static final class MainlineUsePortalRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineUsePortalRequest)
      MainlineUsePortalRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineUsePortalRequest.newBuilder() to construct.
    private MainlineUsePortalRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineUsePortalRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineUsePortalRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineUsePortalRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.Builder.class);
    }

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

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


      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 400008: 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.mainline.Mainline.MainlineUsePortalRequest.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.MainlineUsePortalRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineUsePortalRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest 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.mainline.Mainline.MainlineUsePortalRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest 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.mainline.Mainline.MainlineUsePortalRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest 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.mainline.Mainline.MainlineUsePortalRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest 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.mainline.Mainline.MainlineUsePortalRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest 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.mainline.Mainline.MainlineUsePortalRequest 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.MainlineUsePortalRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineUsePortalRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest(this);
        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.mainline.Mainline.MainlineUsePortalRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineUsePortalRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineUsePortalRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineUsePortalRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    int getPortalX();

    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    int getPortalY();
  }
  /**
   * Protobuf type {@code pb.MainlineUsePortalResponse}
   */
  public  static final class MainlineUsePortalResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineUsePortalResponse)
      MainlineUsePortalResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineUsePortalResponse.newBuilder() to construct.
    private MainlineUsePortalResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineUsePortalResponse() {
    }

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

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

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

              portalY_ = 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.mainline.Mainline.internal_static_pb_MainlineUsePortalResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.Builder.class);
    }

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

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


      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 400008: 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.mainline.Mainline.MainlineUsePortalResponse.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.MainlineUsePortalResponse.Proto)
    }

    public static final int PORTAL_X_FIELD_NUMBER = 1;
    private int portalX_;
    /**
     * <pre>
     *传送门坐标
     * </pre>
     *
     * <code>int32 portal_x = 1;</code>
     * @return The portalX.
     */
    public int getPortalX() {
      return portalX_;
    }

    public static final int PORTAL_Y_FIELD_NUMBER = 2;
    private int portalY_;
    /**
     * <code>int32 portal_y = 2;</code>
     * @return The portalY.
     */
    public int getPortalY() {
      return portalY_;
    }

    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 (portalX_ != 0) {
        output.writeInt32(1, portalX_);
      }
      if (portalY_ != 0) {
        output.writeInt32(2, portalY_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (portalX_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, portalX_);
      }
      if (portalY_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, portalY_);
      }
      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.mainline.Mainline.MainlineUsePortalResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse) obj;

      if (getPortalX()
          != other.getPortalX()) return false;
      if (getPortalY()
          != other.getPortalY()) 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) + PORTAL_X_FIELD_NUMBER;
      hash = (53 * hash) + getPortalX();
      hash = (37 * hash) + PORTAL_Y_FIELD_NUMBER;
      hash = (53 * hash) + getPortalY();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse 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.mainline.Mainline.MainlineUsePortalResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse 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.mainline.Mainline.MainlineUsePortalResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse 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.mainline.Mainline.MainlineUsePortalResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse 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.mainline.Mainline.MainlineUsePortalResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse 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.mainline.Mainline.MainlineUsePortalResponse 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.MainlineUsePortalResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineUsePortalResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.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();
        portalX_ = 0;

        portalY_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUsePortalResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse(this);
        result.portalX_ = portalX_;
        result.portalY_ = portalY_;
        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.mainline.Mainline.MainlineUsePortalResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse.getDefaultInstance()) return this;
        if (other.getPortalX() != 0) {
          setPortalX(other.getPortalX());
        }
        if (other.getPortalY() != 0) {
          setPortalY(other.getPortalY());
        }
        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.mainline.Mainline.MainlineUsePortalResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int portalX_ ;
      /**
       * <pre>
       *传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return The portalX.
       */
      public int getPortalX() {
        return portalX_;
      }
      /**
       * <pre>
       *传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @param value The portalX to set.
       * @return This builder for chaining.
       */
      public Builder setPortalX(int value) {
        
        portalX_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *传送门坐标
       * </pre>
       *
       * <code>int32 portal_x = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalX() {
        
        portalX_ = 0;
        onChanged();
        return this;
      }

      private int portalY_ ;
      /**
       * <code>int32 portal_y = 2;</code>
       * @return The portalY.
       */
      public int getPortalY() {
        return portalY_;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @param value The portalY to set.
       * @return This builder for chaining.
       */
      public Builder setPortalY(int value) {
        
        portalY_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 portal_y = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalY() {
        
        portalY_ = 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.MainlineUsePortalResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineUsePortalResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUsePortalResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *区域ID
     * </pre>
     *
     * <code>int32 zone_id = 1;</code>
     * @return The zoneId.
     */
    int getZoneId();

    /**
     * <pre>
     *收获物ID
     * </pre>
     *
     * <code>int32 harvest_id = 2;</code>
     * @return The harvestId.
     */
    int getHarvestId();
  }
  /**
   * <pre>
   *收割树木、矿堆
   * </pre>
   *
   * Protobuf type {@code pb.MainlineHarvestRequest}
   */
  public  static final class MainlineHarvestRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineHarvestRequest)
      MainlineHarvestRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineHarvestRequest.newBuilder() to construct.
    private MainlineHarvestRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineHarvestRequest() {
    }

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

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

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

              harvestId_ = 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.mainline.Mainline.internal_static_pb_MainlineHarvestRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.Builder.class);
    }

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

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


      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 400010: 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.mainline.Mainline.MainlineHarvestRequest.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.MainlineHarvestRequest.Proto)
    }

    public static final int ZONE_ID_FIELD_NUMBER = 1;
    private int zoneId_;
    /**
     * <pre>
     *区域ID
     * </pre>
     *
     * <code>int32 zone_id = 1;</code>
     * @return The zoneId.
     */
    public int getZoneId() {
      return zoneId_;
    }

    public static final int HARVEST_ID_FIELD_NUMBER = 2;
    private int harvestId_;
    /**
     * <pre>
     *收获物ID
     * </pre>
     *
     * <code>int32 harvest_id = 2;</code>
     * @return The harvestId.
     */
    public int getHarvestId() {
      return harvestId_;
    }

    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 (zoneId_ != 0) {
        output.writeInt32(1, zoneId_);
      }
      if (harvestId_ != 0) {
        output.writeInt32(2, harvestId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (zoneId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, zoneId_);
      }
      if (harvestId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, harvestId_);
      }
      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.mainline.Mainline.MainlineHarvestRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest) obj;

      if (getZoneId()
          != other.getZoneId()) return false;
      if (getHarvestId()
          != other.getHarvestId()) 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) + ZONE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getZoneId();
      hash = (37 * hash) + HARVEST_ID_FIELD_NUMBER;
      hash = (53 * hash) + getHarvestId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest 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.mainline.Mainline.MainlineHarvestRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest 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.mainline.Mainline.MainlineHarvestRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest 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.mainline.Mainline.MainlineHarvestRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest 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.mainline.Mainline.MainlineHarvestRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest 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.mainline.Mainline.MainlineHarvestRequest 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.MainlineHarvestRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineHarvestRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.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();
        zoneId_ = 0;

        harvestId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest(this);
        result.zoneId_ = zoneId_;
        result.harvestId_ = harvestId_;
        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.mainline.Mainline.MainlineHarvestRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest.getDefaultInstance()) return this;
        if (other.getZoneId() != 0) {
          setZoneId(other.getZoneId());
        }
        if (other.getHarvestId() != 0) {
          setHarvestId(other.getHarvestId());
        }
        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.mainline.Mainline.MainlineHarvestRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int zoneId_ ;
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @return The zoneId.
       */
      public int getZoneId() {
        return zoneId_;
      }
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @param value The zoneId to set.
       * @return This builder for chaining.
       */
      public Builder setZoneId(int value) {
        
        zoneId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearZoneId() {
        
        zoneId_ = 0;
        onChanged();
        return this;
      }

      private int harvestId_ ;
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @return The harvestId.
       */
      public int getHarvestId() {
        return harvestId_;
      }
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @param value The harvestId to set.
       * @return This builder for chaining.
       */
      public Builder setHarvestId(int value) {
        
        harvestId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearHarvestId() {
        
        harvestId_ = 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.MainlineHarvestRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineHarvestRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *区域ID
     * </pre>
     *
     * <code>int32 zone_id = 1;</code>
     * @return The zoneId.
     */
    int getZoneId();

    /**
     * <pre>
     *收获物ID
     * </pre>
     *
     * <code>int32 harvest_id = 2;</code>
     * @return The harvestId.
     */
    int getHarvestId();

    /**
     * <pre>
     *重生时间，毫秒
     * </pre>
     *
     * <code>int64 reborn_time = 3;</code>
     * @return The rebornTime.
     */
    long getRebornTime();
  }
  /**
   * Protobuf type {@code pb.MainlineHarvestResponse}
   */
  public  static final class MainlineHarvestResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineHarvestResponse)
      MainlineHarvestResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineHarvestResponse.newBuilder() to construct.
    private MainlineHarvestResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineHarvestResponse() {
    }

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

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

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

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

              rebornTime_ = input.readInt64();
              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.mainline.Mainline.internal_static_pb_MainlineHarvestResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.Builder.class);
    }

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

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


      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 400010: 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.mainline.Mainline.MainlineHarvestResponse.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.MainlineHarvestResponse.Proto)
    }

    public static final int ZONE_ID_FIELD_NUMBER = 1;
    private int zoneId_;
    /**
     * <pre>
     *区域ID
     * </pre>
     *
     * <code>int32 zone_id = 1;</code>
     * @return The zoneId.
     */
    public int getZoneId() {
      return zoneId_;
    }

    public static final int HARVEST_ID_FIELD_NUMBER = 2;
    private int harvestId_;
    /**
     * <pre>
     *收获物ID
     * </pre>
     *
     * <code>int32 harvest_id = 2;</code>
     * @return The harvestId.
     */
    public int getHarvestId() {
      return harvestId_;
    }

    public static final int REBORN_TIME_FIELD_NUMBER = 3;
    private long rebornTime_;
    /**
     * <pre>
     *重生时间，毫秒
     * </pre>
     *
     * <code>int64 reborn_time = 3;</code>
     * @return The rebornTime.
     */
    public long getRebornTime() {
      return rebornTime_;
    }

    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 (zoneId_ != 0) {
        output.writeInt32(1, zoneId_);
      }
      if (harvestId_ != 0) {
        output.writeInt32(2, harvestId_);
      }
      if (rebornTime_ != 0L) {
        output.writeInt64(3, rebornTime_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (zoneId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, zoneId_);
      }
      if (harvestId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, harvestId_);
      }
      if (rebornTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(3, rebornTime_);
      }
      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.mainline.Mainline.MainlineHarvestResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse) obj;

      if (getZoneId()
          != other.getZoneId()) return false;
      if (getHarvestId()
          != other.getHarvestId()) return false;
      if (getRebornTime()
          != other.getRebornTime()) 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) + ZONE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getZoneId();
      hash = (37 * hash) + HARVEST_ID_FIELD_NUMBER;
      hash = (53 * hash) + getHarvestId();
      hash = (37 * hash) + REBORN_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getRebornTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse 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.mainline.Mainline.MainlineHarvestResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse 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.mainline.Mainline.MainlineHarvestResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse 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.mainline.Mainline.MainlineHarvestResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse 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.mainline.Mainline.MainlineHarvestResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse 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.mainline.Mainline.MainlineHarvestResponse 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.MainlineHarvestResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineHarvestResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.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();
        zoneId_ = 0;

        harvestId_ = 0;

        rebornTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineHarvestResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse(this);
        result.zoneId_ = zoneId_;
        result.harvestId_ = harvestId_;
        result.rebornTime_ = rebornTime_;
        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.mainline.Mainline.MainlineHarvestResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse.getDefaultInstance()) return this;
        if (other.getZoneId() != 0) {
          setZoneId(other.getZoneId());
        }
        if (other.getHarvestId() != 0) {
          setHarvestId(other.getHarvestId());
        }
        if (other.getRebornTime() != 0L) {
          setRebornTime(other.getRebornTime());
        }
        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.mainline.Mainline.MainlineHarvestResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int zoneId_ ;
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @return The zoneId.
       */
      public int getZoneId() {
        return zoneId_;
      }
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @param value The zoneId to set.
       * @return This builder for chaining.
       */
      public Builder setZoneId(int value) {
        
        zoneId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *区域ID
       * </pre>
       *
       * <code>int32 zone_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearZoneId() {
        
        zoneId_ = 0;
        onChanged();
        return this;
      }

      private int harvestId_ ;
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @return The harvestId.
       */
      public int getHarvestId() {
        return harvestId_;
      }
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @param value The harvestId to set.
       * @return This builder for chaining.
       */
      public Builder setHarvestId(int value) {
        
        harvestId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *收获物ID
       * </pre>
       *
       * <code>int32 harvest_id = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearHarvestId() {
        
        harvestId_ = 0;
        onChanged();
        return this;
      }

      private long rebornTime_ ;
      /**
       * <pre>
       *重生时间，毫秒
       * </pre>
       *
       * <code>int64 reborn_time = 3;</code>
       * @return The rebornTime.
       */
      public long getRebornTime() {
        return rebornTime_;
      }
      /**
       * <pre>
       *重生时间，毫秒
       * </pre>
       *
       * <code>int64 reborn_time = 3;</code>
       * @param value The rebornTime to set.
       * @return This builder for chaining.
       */
      public Builder setRebornTime(long value) {
        
        rebornTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *重生时间，毫秒
       * </pre>
       *
       * <code>int64 reborn_time = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearRebornTime() {
        
        rebornTime_ = 0L;
        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.MainlineHarvestResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineHarvestResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineHarvestResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineTaskRewardRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineTaskRewardRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *领取主线任务奖励
   * </pre>
   *
   * Protobuf type {@code pb.MainlineTaskRewardRequest}
   */
  public  static final class MainlineTaskRewardRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTaskRewardRequest)
      MainlineTaskRewardRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTaskRewardRequest.newBuilder() to construct.
    private MainlineTaskRewardRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTaskRewardRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineTaskRewardRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineTaskRewardRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.Builder.class);
    }

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

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


      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 400011: 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.mainline.Mainline.MainlineTaskRewardRequest.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.MainlineTaskRewardRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineTaskRewardRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest 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.mainline.Mainline.MainlineTaskRewardRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest 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.mainline.Mainline.MainlineTaskRewardRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest 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.mainline.Mainline.MainlineTaskRewardRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest 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.mainline.Mainline.MainlineTaskRewardRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest 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.mainline.Mainline.MainlineTaskRewardRequest 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.MainlineTaskRewardRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTaskRewardRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest(this);
        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.mainline.Mainline.MainlineTaskRewardRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineTaskRewardRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineTaskRewardRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTaskRewardRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     * @return Whether the task field is set.
     */
    boolean hasTask();
    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     * @return The task.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask();
    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder();
  }
  /**
   * Protobuf type {@code pb.MainlineTaskRewardResponse}
   */
  public  static final class MainlineTaskRewardResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTaskRewardResponse)
      MainlineTaskRewardResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTaskRewardResponse.newBuilder() to construct.
    private MainlineTaskRewardResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTaskRewardResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineTaskRewardResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder subBuilder = null;
              if (task_ != null) {
                subBuilder = task_.toBuilder();
              }
              task_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(task_);
                task_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.Builder.class);
    }

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

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


      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 400011: 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.mainline.Mainline.MainlineTaskRewardResponse.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.MainlineTaskRewardResponse.Proto)
    }

    public static final int TASK_FIELD_NUMBER = 1;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask task_;
    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     * @return Whether the task field is set.
     */
    public boolean hasTask() {
      return task_ != null;
    }
    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     * @return The task.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask() {
      return task_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
    }
    /**
     * <pre>
     *下一个任务
     * </pre>
     *
     * <code>.pb.PbTask task = 1;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder() {
      return getTask();
    }

    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 (task_ != null) {
        output.writeMessage(1, getTask());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (task_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getTask());
      }
      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.mainline.Mainline.MainlineTaskRewardResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse) obj;

      if (hasTask() != other.hasTask()) return false;
      if (hasTask()) {
        if (!getTask()
            .equals(other.getTask())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse 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.mainline.Mainline.MainlineTaskRewardResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse 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.mainline.Mainline.MainlineTaskRewardResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse 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.mainline.Mainline.MainlineTaskRewardResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse 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.mainline.Mainline.MainlineTaskRewardResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse 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.mainline.Mainline.MainlineTaskRewardResponse 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.MainlineTaskRewardResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTaskRewardResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.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();
        if (taskBuilder_ == null) {
          task_ = null;
        } else {
          task_ = null;
          taskBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTaskRewardResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse(this);
        if (taskBuilder_ == null) {
          result.task_ = task_;
        } else {
          result.task_ = taskBuilder_.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.mainline.Mainline.MainlineTaskRewardResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse.getDefaultInstance()) return this;
        if (other.hasTask()) {
          mergeTask(other.getTask());
        }
        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.mainline.Mainline.MainlineTaskRewardResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask task_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder> taskBuilder_;
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       * @return Whether the task field is set.
       */
      public boolean hasTask() {
        return taskBuilder_ != null || task_ != null;
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       * @return The task.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask getTask() {
        if (taskBuilder_ == null) {
          return task_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
        } else {
          return taskBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public Builder setTask(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask value) {
        if (taskBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          task_ = value;
          onChanged();
        } else {
          taskBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public Builder setTask(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder builderForValue) {
        if (taskBuilder_ == null) {
          task_ = builderForValue.build();
          onChanged();
        } else {
          taskBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public Builder mergeTask(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask value) {
        if (taskBuilder_ == null) {
          if (task_ != null) {
            task_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.newBuilder(task_).mergeFrom(value).buildPartial();
          } else {
            task_ = value;
          }
          onChanged();
        } else {
          taskBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public Builder clearTask() {
        if (taskBuilder_ == null) {
          task_ = null;
          onChanged();
        } else {
          task_ = null;
          taskBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder getTaskBuilder() {
        
        onChanged();
        return getTaskFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder getTaskOrBuilder() {
        if (taskBuilder_ != null) {
          return taskBuilder_.getMessageOrBuilder();
        } else {
          return task_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.getDefaultInstance() : task_;
        }
      }
      /**
       * <pre>
       *下一个任务
       * </pre>
       *
       * <code>.pb.PbTask task = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder> 
          getTaskFieldBuilder() {
        if (taskBuilder_ == null) {
          taskBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTask.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbTaskOrBuilder>(
                  getTask(),
                  getParentForChildren(),
                  isClean());
          task_ = null;
        }
        return taskBuilder_;
      }
      @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.MainlineTaskRewardResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTaskRewardResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTaskRewardResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <code>int32 teleport_id = 1;</code>
     * @return The teleportId.
     */
    int getTeleportId();
  }
  /**
   * <pre>
   *使用传送点
   * </pre>
   *
   * Protobuf type {@code pb.MainlineUseTeleportRequest}
   */
  public  static final class MainlineUseTeleportRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineUseTeleportRequest)
      MainlineUseTeleportRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineUseTeleportRequest.newBuilder() to construct.
    private MainlineUseTeleportRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineUseTeleportRequest() {
    }

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

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

              teleportId_ = 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.mainline.Mainline.internal_static_pb_MainlineUseTeleportRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.Builder.class);
    }

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

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


      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 400012: 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.mainline.Mainline.MainlineUseTeleportRequest.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.MainlineUseTeleportRequest.Proto)
    }

    public static final int TELEPORT_ID_FIELD_NUMBER = 1;
    private int teleportId_;
    /**
     * <code>int32 teleport_id = 1;</code>
     * @return The teleportId.
     */
    public int getTeleportId() {
      return teleportId_;
    }

    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 (teleportId_ != 0) {
        output.writeInt32(1, teleportId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (teleportId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, teleportId_);
      }
      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.mainline.Mainline.MainlineUseTeleportRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest) obj;

      if (getTeleportId()
          != other.getTeleportId()) 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) + TELEPORT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getTeleportId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest 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.mainline.Mainline.MainlineUseTeleportRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest 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.mainline.Mainline.MainlineUseTeleportRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest 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.mainline.Mainline.MainlineUseTeleportRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest 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.mainline.Mainline.MainlineUseTeleportRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest 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.mainline.Mainline.MainlineUseTeleportRequest 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.MainlineUseTeleportRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineUseTeleportRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.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();
        teleportId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest(this);
        result.teleportId_ = teleportId_;
        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.mainline.Mainline.MainlineUseTeleportRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest.getDefaultInstance()) return this;
        if (other.getTeleportId() != 0) {
          setTeleportId(other.getTeleportId());
        }
        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.mainline.Mainline.MainlineUseTeleportRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int teleportId_ ;
      /**
       * <code>int32 teleport_id = 1;</code>
       * @return The teleportId.
       */
      public int getTeleportId() {
        return teleportId_;
      }
      /**
       * <code>int32 teleport_id = 1;</code>
       * @param value The teleportId to set.
       * @return This builder for chaining.
       */
      public Builder setTeleportId(int value) {
        
        teleportId_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 teleport_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTeleportId() {
        
        teleportId_ = 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.MainlineUseTeleportRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineUseTeleportRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineUseTeleportResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineUseTeleportResponse)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code pb.MainlineUseTeleportResponse}
   */
  public  static final class MainlineUseTeleportResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineUseTeleportResponse)
      MainlineUseTeleportResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineUseTeleportResponse.newBuilder() to construct.
    private MainlineUseTeleportResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineUseTeleportResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineUseTeleportResponse(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineUseTeleportResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.Builder.class);
    }

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

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


      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 400012: 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.mainline.Mainline.MainlineUseTeleportResponse.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.MainlineUseTeleportResponse.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineUseTeleportResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse 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.mainline.Mainline.MainlineUseTeleportResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse 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.mainline.Mainline.MainlineUseTeleportResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse 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.mainline.Mainline.MainlineUseTeleportResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse 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.mainline.Mainline.MainlineUseTeleportResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse 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.mainline.Mainline.MainlineUseTeleportResponse 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.MainlineUseTeleportResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineUseTeleportResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineUseTeleportResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse(this);
        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.mainline.Mainline.MainlineUseTeleportResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineUseTeleportResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineUseTeleportResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineUseTeleportResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineUseTeleportResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *1BOSS箱子，2地图箱子
     * </pre>
     *
     * <code>int32 box_type = 1;</code>
     * @return The boxType.
     */
    int getBoxType();
  }
  /**
   * <pre>
   *宝箱信息
   * </pre>
   *
   * Protobuf type {@code pb.MainlineBoxInfoRequest}
   */
  public  static final class MainlineBoxInfoRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineBoxInfoRequest)
      MainlineBoxInfoRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineBoxInfoRequest.newBuilder() to construct.
    private MainlineBoxInfoRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineBoxInfoRequest() {
    }

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

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

              boxType_ = 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.mainline.Mainline.internal_static_pb_MainlineBoxInfoRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.Builder.class);
    }

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

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


      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 400013: 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.mainline.Mainline.MainlineBoxInfoRequest.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.MainlineBoxInfoRequest.Proto)
    }

    public static final int BOX_TYPE_FIELD_NUMBER = 1;
    private int boxType_;
    /**
     * <pre>
     *1BOSS箱子，2地图箱子
     * </pre>
     *
     * <code>int32 box_type = 1;</code>
     * @return The boxType.
     */
    public int getBoxType() {
      return boxType_;
    }

    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 (boxType_ != 0) {
        output.writeInt32(1, boxType_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (boxType_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, boxType_);
      }
      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.mainline.Mainline.MainlineBoxInfoRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest) obj;

      if (getBoxType()
          != other.getBoxType()) 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) + BOX_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getBoxType();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest 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.mainline.Mainline.MainlineBoxInfoRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest 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.mainline.Mainline.MainlineBoxInfoRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest 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.mainline.Mainline.MainlineBoxInfoRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest 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.mainline.Mainline.MainlineBoxInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest 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.mainline.Mainline.MainlineBoxInfoRequest 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.MainlineBoxInfoRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineBoxInfoRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.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();
        boxType_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest(this);
        result.boxType_ = boxType_;
        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.mainline.Mainline.MainlineBoxInfoRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest.getDefaultInstance()) return this;
        if (other.getBoxType() != 0) {
          setBoxType(other.getBoxType());
        }
        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.mainline.Mainline.MainlineBoxInfoRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int boxType_ ;
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @return The boxType.
       */
      public int getBoxType() {
        return boxType_;
      }
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @param value The boxType to set.
       * @return This builder for chaining.
       */
      public Builder setBoxType(int value) {
        
        boxType_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearBoxType() {
        
        boxType_ = 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.MainlineBoxInfoRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineBoxInfoRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     * @return Whether the treasureBox field is set.
     */
    boolean hasTreasureBox();
    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     * @return The treasureBox.
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getTreasureBox();
    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder getTreasureBoxOrBuilder();

    /**
     * <pre>
     *剩余的箱子数量
     * </pre>
     *
     * <code>int32 left_box_num = 2;</code>
     * @return The leftBoxNum.
     */
    int getLeftBoxNum();
  }
  /**
   * Protobuf type {@code pb.MainlineBoxInfoResponse}
   */
  public  static final class MainlineBoxInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineBoxInfoResponse)
      MainlineBoxInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineBoxInfoResponse.newBuilder() to construct.
    private MainlineBoxInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineBoxInfoResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineBoxInfoResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder subBuilder = null;
              if (treasureBox_ != null) {
                subBuilder = treasureBox_.toBuilder();
              }
              treasureBox_ = input.readMessage(pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(treasureBox_);
                treasureBox_ = subBuilder.buildPartial();
              }

              break;
            }
            case 16: {

              leftBoxNum_ = 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.mainline.Mainline.internal_static_pb_MainlineBoxInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.Builder.class);
    }

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

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


      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 400013: 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.mainline.Mainline.MainlineBoxInfoResponse.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.MainlineBoxInfoResponse.Proto)
    }

    public static final int TREASURE_BOX_FIELD_NUMBER = 1;
    private pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox treasureBox_;
    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     * @return Whether the treasureBox field is set.
     */
    public boolean hasTreasureBox() {
      return treasureBox_ != null;
    }
    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     * @return The treasureBox.
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getTreasureBox() {
      return treasureBox_ == null ? pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.getDefaultInstance() : treasureBox_;
    }
    /**
     * <pre>
     *箱子信息
     * </pre>
     *
     * <code>.pb.PbTreasureBox treasure_box = 1;</code>
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder getTreasureBoxOrBuilder() {
      return getTreasureBox();
    }

    public static final int LEFT_BOX_NUM_FIELD_NUMBER = 2;
    private int leftBoxNum_;
    /**
     * <pre>
     *剩余的箱子数量
     * </pre>
     *
     * <code>int32 left_box_num = 2;</code>
     * @return The leftBoxNum.
     */
    public int getLeftBoxNum() {
      return leftBoxNum_;
    }

    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 (treasureBox_ != null) {
        output.writeMessage(1, getTreasureBox());
      }
      if (leftBoxNum_ != 0) {
        output.writeInt32(2, leftBoxNum_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (treasureBox_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getTreasureBox());
      }
      if (leftBoxNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, leftBoxNum_);
      }
      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.mainline.Mainline.MainlineBoxInfoResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse) obj;

      if (hasTreasureBox() != other.hasTreasureBox()) return false;
      if (hasTreasureBox()) {
        if (!getTreasureBox()
            .equals(other.getTreasureBox())) return false;
      }
      if (getLeftBoxNum()
          != other.getLeftBoxNum()) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse 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.mainline.Mainline.MainlineBoxInfoResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse 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.mainline.Mainline.MainlineBoxInfoResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse 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.mainline.Mainline.MainlineBoxInfoResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse 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.mainline.Mainline.MainlineBoxInfoResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse 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.mainline.Mainline.MainlineBoxInfoResponse 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.MainlineBoxInfoResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineBoxInfoResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.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();
        if (treasureBoxBuilder_ == null) {
          treasureBox_ = null;
        } else {
          treasureBox_ = null;
          treasureBoxBuilder_ = null;
        }
        leftBoxNum_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineBoxInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse(this);
        if (treasureBoxBuilder_ == null) {
          result.treasureBox_ = treasureBox_;
        } else {
          result.treasureBox_ = treasureBoxBuilder_.build();
        }
        result.leftBoxNum_ = leftBoxNum_;
        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.mainline.Mainline.MainlineBoxInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse.getDefaultInstance()) return this;
        if (other.hasTreasureBox()) {
          mergeTreasureBox(other.getTreasureBox());
        }
        if (other.getLeftBoxNum() != 0) {
          setLeftBoxNum(other.getLeftBoxNum());
        }
        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.mainline.Mainline.MainlineBoxInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox treasureBox_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder> treasureBoxBuilder_;
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       * @return Whether the treasureBox field is set.
       */
      public boolean hasTreasureBox() {
        return treasureBoxBuilder_ != null || treasureBox_ != null;
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       * @return The treasureBox.
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getTreasureBox() {
        if (treasureBoxBuilder_ == null) {
          return treasureBox_ == null ? pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.getDefaultInstance() : treasureBox_;
        } else {
          return treasureBoxBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public Builder setTreasureBox(pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox value) {
        if (treasureBoxBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          treasureBox_ = value;
          onChanged();
        } else {
          treasureBoxBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public Builder setTreasureBox(
          pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder builderForValue) {
        if (treasureBoxBuilder_ == null) {
          treasureBox_ = builderForValue.build();
          onChanged();
        } else {
          treasureBoxBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public Builder mergeTreasureBox(pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox value) {
        if (treasureBoxBuilder_ == null) {
          if (treasureBox_ != null) {
            treasureBox_ =
              pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.newBuilder(treasureBox_).mergeFrom(value).buildPartial();
          } else {
            treasureBox_ = value;
          }
          onChanged();
        } else {
          treasureBoxBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public Builder clearTreasureBox() {
        if (treasureBoxBuilder_ == null) {
          treasureBox_ = null;
          onChanged();
        } else {
          treasureBox_ = null;
          treasureBoxBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder getTreasureBoxBuilder() {
        
        onChanged();
        return getTreasureBoxFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder getTreasureBoxOrBuilder() {
        if (treasureBoxBuilder_ != null) {
          return treasureBoxBuilder_.getMessageOrBuilder();
        } else {
          return treasureBox_ == null ?
              pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.getDefaultInstance() : treasureBox_;
        }
      }
      /**
       * <pre>
       *箱子信息
       * </pre>
       *
       * <code>.pb.PbTreasureBox treasure_box = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder> 
          getTreasureBoxFieldBuilder() {
        if (treasureBoxBuilder_ == null) {
          treasureBoxBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder>(
                  getTreasureBox(),
                  getParentForChildren(),
                  isClean());
          treasureBox_ = null;
        }
        return treasureBoxBuilder_;
      }

      private int leftBoxNum_ ;
      /**
       * <pre>
       *剩余的箱子数量
       * </pre>
       *
       * <code>int32 left_box_num = 2;</code>
       * @return The leftBoxNum.
       */
      public int getLeftBoxNum() {
        return leftBoxNum_;
      }
      /**
       * <pre>
       *剩余的箱子数量
       * </pre>
       *
       * <code>int32 left_box_num = 2;</code>
       * @param value The leftBoxNum to set.
       * @return This builder for chaining.
       */
      public Builder setLeftBoxNum(int value) {
        
        leftBoxNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *剩余的箱子数量
       * </pre>
       *
       * <code>int32 left_box_num = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearLeftBoxNum() {
        
        leftBoxNum_ = 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.MainlineBoxInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineBoxInfoResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineBoxInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *1BOSS箱子，2地图箱子
     * </pre>
     *
     * <code>int32 box_type = 1;</code>
     * @return The boxType.
     */
    int getBoxType();

    /**
     * <pre>
     *是不是观察广告
     * </pre>
     *
     * <code>bool watch_ad = 2;</code>
     * @return The watchAd.
     */
    boolean getWatchAd();
  }
  /**
   * <pre>
   *领取宝箱信息
   * </pre>
   *
   * Protobuf type {@code pb.MainlineTakeBoxRequest}
   */
  public  static final class MainlineTakeBoxRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTakeBoxRequest)
      MainlineTakeBoxRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTakeBoxRequest.newBuilder() to construct.
    private MainlineTakeBoxRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTakeBoxRequest() {
    }

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

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

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

              watchAd_ = 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.mainline.Mainline.internal_static_pb_MainlineTakeBoxRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.Builder.class);
    }

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

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


      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 400014: 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.mainline.Mainline.MainlineTakeBoxRequest.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.MainlineTakeBoxRequest.Proto)
    }

    public static final int BOX_TYPE_FIELD_NUMBER = 1;
    private int boxType_;
    /**
     * <pre>
     *1BOSS箱子，2地图箱子
     * </pre>
     *
     * <code>int32 box_type = 1;</code>
     * @return The boxType.
     */
    public int getBoxType() {
      return boxType_;
    }

    public static final int WATCH_AD_FIELD_NUMBER = 2;
    private boolean watchAd_;
    /**
     * <pre>
     *是不是观察广告
     * </pre>
     *
     * <code>bool watch_ad = 2;</code>
     * @return The watchAd.
     */
    public boolean getWatchAd() {
      return watchAd_;
    }

    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 (boxType_ != 0) {
        output.writeInt32(1, boxType_);
      }
      if (watchAd_ != false) {
        output.writeBool(2, watchAd_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (boxType_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, boxType_);
      }
      if (watchAd_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, watchAd_);
      }
      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.mainline.Mainline.MainlineTakeBoxRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest) obj;

      if (getBoxType()
          != other.getBoxType()) return false;
      if (getWatchAd()
          != other.getWatchAd()) 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) + BOX_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getBoxType();
      hash = (37 * hash) + WATCH_AD_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getWatchAd());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest 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.mainline.Mainline.MainlineTakeBoxRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest 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.mainline.Mainline.MainlineTakeBoxRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest 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.mainline.Mainline.MainlineTakeBoxRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest 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.mainline.Mainline.MainlineTakeBoxRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest 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.mainline.Mainline.MainlineTakeBoxRequest 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.MainlineTakeBoxRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTakeBoxRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.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();
        boxType_ = 0;

        watchAd_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest(this);
        result.boxType_ = boxType_;
        result.watchAd_ = watchAd_;
        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.mainline.Mainline.MainlineTakeBoxRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest.getDefaultInstance()) return this;
        if (other.getBoxType() != 0) {
          setBoxType(other.getBoxType());
        }
        if (other.getWatchAd() != false) {
          setWatchAd(other.getWatchAd());
        }
        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.mainline.Mainline.MainlineTakeBoxRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int boxType_ ;
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @return The boxType.
       */
      public int getBoxType() {
        return boxType_;
      }
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @param value The boxType to set.
       * @return This builder for chaining.
       */
      public Builder setBoxType(int value) {
        
        boxType_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *1BOSS箱子，2地图箱子
       * </pre>
       *
       * <code>int32 box_type = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearBoxType() {
        
        boxType_ = 0;
        onChanged();
        return this;
      }

      private boolean watchAd_ ;
      /**
       * <pre>
       *是不是观察广告
       * </pre>
       *
       * <code>bool watch_ad = 2;</code>
       * @return The watchAd.
       */
      public boolean getWatchAd() {
        return watchAd_;
      }
      /**
       * <pre>
       *是不是观察广告
       * </pre>
       *
       * <code>bool watch_ad = 2;</code>
       * @param value The watchAd to set.
       * @return This builder for chaining.
       */
      public Builder setWatchAd(boolean value) {
        
        watchAd_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *是不是观察广告
       * </pre>
       *
       * <code>bool watch_ad = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearWatchAd() {
        
        watchAd_ = 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.MainlineTakeBoxRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTakeBoxRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineTakeBoxResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineTakeBoxResponse)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code pb.MainlineTakeBoxResponse}
   */
  public  static final class MainlineTakeBoxResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTakeBoxResponse)
      MainlineTakeBoxResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTakeBoxResponse.newBuilder() to construct.
    private MainlineTakeBoxResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTakeBoxResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineTakeBoxResponse(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineTakeBoxResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.Builder.class);
    }

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

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


      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 400014: 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.mainline.Mainline.MainlineTakeBoxResponse.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.MainlineTakeBoxResponse.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineTakeBoxResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse 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.mainline.Mainline.MainlineTakeBoxResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse 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.mainline.Mainline.MainlineTakeBoxResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse 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.mainline.Mainline.MainlineTakeBoxResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse 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.mainline.Mainline.MainlineTakeBoxResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse 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.mainline.Mainline.MainlineTakeBoxResponse 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.MainlineTakeBoxResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTakeBoxResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeBoxResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse(this);
        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.mainline.Mainline.MainlineTakeBoxResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineTakeBoxResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineTakeBoxResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTakeBoxResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeBoxResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineRefreshBoxRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineRefreshBoxRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *刷新地图宝箱
   * </pre>
   *
   * Protobuf type {@code pb.MainlineRefreshBoxRequest}
   */
  public  static final class MainlineRefreshBoxRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineRefreshBoxRequest)
      MainlineRefreshBoxRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineRefreshBoxRequest.newBuilder() to construct.
    private MainlineRefreshBoxRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineRefreshBoxRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineRefreshBoxRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineRefreshBoxRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.Builder.class);
    }

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

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


      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 400015: 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.mainline.Mainline.MainlineRefreshBoxRequest.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.MainlineRefreshBoxRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineRefreshBoxRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest 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.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest 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.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest 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.mainline.Mainline.MainlineRefreshBoxRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest 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.mainline.Mainline.MainlineRefreshBoxRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest 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.mainline.Mainline.MainlineRefreshBoxRequest 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.MainlineRefreshBoxRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineRefreshBoxRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest(this);
        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.mainline.Mainline.MainlineRefreshBoxRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineRefreshBoxRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineRefreshBoxRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineRefreshBoxRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 1;</code>
     * @return The nextBoxTime.
     */
    long getNextBoxTime();

    /**
     * <pre>
     *是否需要刷新出宝箱，true需要
     * </pre>
     *
     * <code>bool has_box = 2;</code>
     * @return The hasBox.
     */
    boolean getHasBox();
  }
  /**
   * Protobuf type {@code pb.MainlineRefreshBoxResponse}
   */
  public  static final class MainlineRefreshBoxResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineRefreshBoxResponse)
      MainlineRefreshBoxResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineRefreshBoxResponse.newBuilder() to construct.
    private MainlineRefreshBoxResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineRefreshBoxResponse() {
    }

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

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

              nextBoxTime_ = input.readInt64();
              break;
            }
            case 16: {

              hasBox_ = 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.mainline.Mainline.internal_static_pb_MainlineRefreshBoxResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.Builder.class);
    }

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

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


      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 400015: 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.mainline.Mainline.MainlineRefreshBoxResponse.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.MainlineRefreshBoxResponse.Proto)
    }

    public static final int NEXT_BOX_TIME_FIELD_NUMBER = 1;
    private long nextBoxTime_;
    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 1;</code>
     * @return The nextBoxTime.
     */
    public long getNextBoxTime() {
      return nextBoxTime_;
    }

    public static final int HAS_BOX_FIELD_NUMBER = 2;
    private boolean hasBox_;
    /**
     * <pre>
     *是否需要刷新出宝箱，true需要
     * </pre>
     *
     * <code>bool has_box = 2;</code>
     * @return The hasBox.
     */
    public boolean getHasBox() {
      return hasBox_;
    }

    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 (nextBoxTime_ != 0L) {
        output.writeInt64(1, nextBoxTime_);
      }
      if (hasBox_ != false) {
        output.writeBool(2, hasBox_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (nextBoxTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, nextBoxTime_);
      }
      if (hasBox_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, hasBox_);
      }
      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.mainline.Mainline.MainlineRefreshBoxResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse) obj;

      if (getNextBoxTime()
          != other.getNextBoxTime()) return false;
      if (getHasBox()
          != other.getHasBox()) 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) + NEXT_BOX_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getNextBoxTime());
      hash = (37 * hash) + HAS_BOX_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getHasBox());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse 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.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse 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.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse 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.mainline.Mainline.MainlineRefreshBoxResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse 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.mainline.Mainline.MainlineRefreshBoxResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse 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.mainline.Mainline.MainlineRefreshBoxResponse 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.MainlineRefreshBoxResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineRefreshBoxResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.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();
        nextBoxTime_ = 0L;

        hasBox_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineRefreshBoxResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse(this);
        result.nextBoxTime_ = nextBoxTime_;
        result.hasBox_ = hasBox_;
        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.mainline.Mainline.MainlineRefreshBoxResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse.getDefaultInstance()) return this;
        if (other.getNextBoxTime() != 0L) {
          setNextBoxTime(other.getNextBoxTime());
        }
        if (other.getHasBox() != false) {
          setHasBox(other.getHasBox());
        }
        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.mainline.Mainline.MainlineRefreshBoxResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long nextBoxTime_ ;
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @return The nextBoxTime.
       */
      public long getNextBoxTime() {
        return nextBoxTime_;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @param value The nextBoxTime to set.
       * @return This builder for chaining.
       */
      public Builder setNextBoxTime(long value) {
        
        nextBoxTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearNextBoxTime() {
        
        nextBoxTime_ = 0L;
        onChanged();
        return this;
      }

      private boolean hasBox_ ;
      /**
       * <pre>
       *是否需要刷新出宝箱，true需要
       * </pre>
       *
       * <code>bool has_box = 2;</code>
       * @return The hasBox.
       */
      public boolean getHasBox() {
        return hasBox_;
      }
      /**
       * <pre>
       *是否需要刷新出宝箱，true需要
       * </pre>
       *
       * <code>bool has_box = 2;</code>
       * @param value The hasBox to set.
       * @return This builder for chaining.
       */
      public Builder setHasBox(boolean value) {
        
        hasBox_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *是否需要刷新出宝箱，true需要
       * </pre>
       *
       * <code>bool has_box = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearHasBox() {
        
        hasBox_ = 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.MainlineRefreshBoxResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineRefreshBoxResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineRefreshBoxResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineStartCampRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineStartCampRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *开始露营
   * </pre>
   *
   * Protobuf type {@code pb.MainlineStartCampRequest}
   */
  public  static final class MainlineStartCampRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineStartCampRequest)
      MainlineStartCampRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineStartCampRequest.newBuilder() to construct.
    private MainlineStartCampRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineStartCampRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineStartCampRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineStartCampRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.Builder.class);
    }

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

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


      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 400016: 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.mainline.Mainline.MainlineStartCampRequest.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.MainlineStartCampRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineStartCampRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest 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.mainline.Mainline.MainlineStartCampRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest 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.mainline.Mainline.MainlineStartCampRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest 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.mainline.Mainline.MainlineStartCampRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest 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.mainline.Mainline.MainlineStartCampRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest 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.mainline.Mainline.MainlineStartCampRequest 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.MainlineStartCampRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineStartCampRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest(this);
        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.mainline.Mainline.MainlineStartCampRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineStartCampRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineStartCampRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineStartCampRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *高级露营结束时间，毫秒
     * </pre>
     *
     * <code>int64 camp_adv_end_time = 1;</code>
     * @return The campAdvEndTime.
     */
    long getCampAdvEndTime();
  }
  /**
   * Protobuf type {@code pb.MainlineStartCampResponse}
   */
  public  static final class MainlineStartCampResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineStartCampResponse)
      MainlineStartCampResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineStartCampResponse.newBuilder() to construct.
    private MainlineStartCampResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineStartCampResponse() {
    }

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

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

              campAdvEndTime_ = input.readInt64();
              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.mainline.Mainline.internal_static_pb_MainlineStartCampResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.Builder.class);
    }

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

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


      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 400016: 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.mainline.Mainline.MainlineStartCampResponse.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.MainlineStartCampResponse.Proto)
    }

    public static final int CAMP_ADV_END_TIME_FIELD_NUMBER = 1;
    private long campAdvEndTime_;
    /**
     * <pre>
     *高级露营结束时间，毫秒
     * </pre>
     *
     * <code>int64 camp_adv_end_time = 1;</code>
     * @return The campAdvEndTime.
     */
    public long getCampAdvEndTime() {
      return campAdvEndTime_;
    }

    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 (campAdvEndTime_ != 0L) {
        output.writeInt64(1, campAdvEndTime_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (campAdvEndTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, campAdvEndTime_);
      }
      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.mainline.Mainline.MainlineStartCampResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse) obj;

      if (getCampAdvEndTime()
          != other.getCampAdvEndTime()) 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) + CAMP_ADV_END_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getCampAdvEndTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse 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.mainline.Mainline.MainlineStartCampResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse 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.mainline.Mainline.MainlineStartCampResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse 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.mainline.Mainline.MainlineStartCampResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse 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.mainline.Mainline.MainlineStartCampResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse 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.mainline.Mainline.MainlineStartCampResponse 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.MainlineStartCampResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineStartCampResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.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();
        campAdvEndTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineStartCampResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse(this);
        result.campAdvEndTime_ = campAdvEndTime_;
        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.mainline.Mainline.MainlineStartCampResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse.getDefaultInstance()) return this;
        if (other.getCampAdvEndTime() != 0L) {
          setCampAdvEndTime(other.getCampAdvEndTime());
        }
        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.mainline.Mainline.MainlineStartCampResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long campAdvEndTime_ ;
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @return The campAdvEndTime.
       */
      public long getCampAdvEndTime() {
        return campAdvEndTime_;
      }
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @param value The campAdvEndTime to set.
       * @return This builder for chaining.
       */
      public Builder setCampAdvEndTime(long value) {
        
        campAdvEndTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearCampAdvEndTime() {
        
        campAdvEndTime_ = 0L;
        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.MainlineStartCampResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineStartCampResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineStartCampResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineEndCampRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineEndCampRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *结束露营
   * </pre>
   *
   * Protobuf type {@code pb.MainlineEndCampRequest}
   */
  public  static final class MainlineEndCampRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineEndCampRequest)
      MainlineEndCampRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineEndCampRequest.newBuilder() to construct.
    private MainlineEndCampRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineEndCampRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineEndCampRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineEndCampRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.Builder.class);
    }

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

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


      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 400017: 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.mainline.Mainline.MainlineEndCampRequest.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.MainlineEndCampRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineEndCampRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest 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.mainline.Mainline.MainlineEndCampRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest 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.mainline.Mainline.MainlineEndCampRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest 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.mainline.Mainline.MainlineEndCampRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest 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.mainline.Mainline.MainlineEndCampRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest 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.mainline.Mainline.MainlineEndCampRequest 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.MainlineEndCampRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineEndCampRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest(this);
        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.mainline.Mainline.MainlineEndCampRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineEndCampRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineEndCampRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineEndCampRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> 
        getThingsList();
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getThings(int index);
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    int getThingsCount();
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
        getThingsOrBuilderList();
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getThingsOrBuilder(
        int index);

    /**
     * <pre>
     *本次露营持续的时间，毫秒
     * </pre>
     *
     * <code>int64 curr_camp_time = 2;</code>
     * @return The currCampTime.
     */
    long getCurrCampTime();
  }
  /**
   * Protobuf type {@code pb.MainlineEndCampResponse}
   */
  public  static final class MainlineEndCampResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineEndCampResponse)
      MainlineEndCampResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineEndCampResponse.newBuilder() to construct.
    private MainlineEndCampResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineEndCampResponse() {
      things_ = java.util.Collections.emptyList();
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineEndCampResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                things_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing>();
                mutable_bitField0_ |= 0x00000001;
              }
              things_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.parser(), extensionRegistry));
              break;
            }
            case 16: {

              currCampTime_ = input.readInt64();
              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)) {
          things_ = java.util.Collections.unmodifiableList(things_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.Builder.class);
    }

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

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


      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 400017: 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.mainline.Mainline.MainlineEndCampResponse.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.MainlineEndCampResponse.Proto)
    }

    public static final int THINGS_FIELD_NUMBER = 1;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> things_;
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> getThingsList() {
      return things_;
    }
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
        getThingsOrBuilderList() {
      return things_;
    }
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    public int getThingsCount() {
      return things_.size();
    }
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getThings(int index) {
      return things_.get(index);
    }
    /**
     * <pre>
     *露营期间累计获得的物品，仅用于展示
     * </pre>
     *
     * <code>repeated .pb.PbThing things = 1;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getThingsOrBuilder(
        int index) {
      return things_.get(index);
    }

    public static final int CURR_CAMP_TIME_FIELD_NUMBER = 2;
    private long currCampTime_;
    /**
     * <pre>
     *本次露营持续的时间，毫秒
     * </pre>
     *
     * <code>int64 curr_camp_time = 2;</code>
     * @return The currCampTime.
     */
    public long getCurrCampTime() {
      return currCampTime_;
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      for (int i = 0; i < things_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, things_.get(i));
      }
      if (currCampTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, currCampTime_);
      }
      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.mainline.Mainline.MainlineEndCampResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse) obj;

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

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getThingsCount() > 0) {
        hash = (37 * hash) + THINGS_FIELD_NUMBER;
        hash = (53 * hash) + getThingsList().hashCode();
      }
      hash = (37 * hash) + CURR_CAMP_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getCurrCampTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse 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.mainline.Mainline.MainlineEndCampResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse 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.mainline.Mainline.MainlineEndCampResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse 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.mainline.Mainline.MainlineEndCampResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse 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.mainline.Mainline.MainlineEndCampResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse 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.mainline.Mainline.MainlineEndCampResponse 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.MainlineEndCampResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineEndCampResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getThingsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (thingsBuilder_ == null) {
          things_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          thingsBuilder_.clear();
        }
        currCampTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineEndCampResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse(this);
        int from_bitField0_ = bitField0_;
        if (thingsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            things_ = java.util.Collections.unmodifiableList(things_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.things_ = things_;
        } else {
          result.things_ = thingsBuilder_.build();
        }
        result.currCampTime_ = currCampTime_;
        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.mainline.Mainline.MainlineEndCampResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse.getDefaultInstance()) return this;
        if (thingsBuilder_ == null) {
          if (!other.things_.isEmpty()) {
            if (things_.isEmpty()) {
              things_ = other.things_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureThingsIsMutable();
              things_.addAll(other.things_);
            }
            onChanged();
          }
        } else {
          if (!other.things_.isEmpty()) {
            if (thingsBuilder_.isEmpty()) {
              thingsBuilder_.dispose();
              thingsBuilder_ = null;
              things_ = other.things_;
              bitField0_ = (bitField0_ & ~0x00000001);
              thingsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getThingsFieldBuilder() : null;
            } else {
              thingsBuilder_.addAllMessages(other.things_);
            }
          }
        }
        if (other.getCurrCampTime() != 0L) {
          setCurrCampTime(other.getCurrCampTime());
        }
        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.mainline.Mainline.MainlineEndCampResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

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

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> thingsBuilder_;

      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> getThingsList() {
        if (thingsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(things_);
        } else {
          return thingsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public int getThingsCount() {
        if (thingsBuilder_ == null) {
          return things_.size();
        } else {
          return thingsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getThings(int index) {
        if (thingsBuilder_ == null) {
          return things_.get(index);
        } else {
          return thingsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder setThings(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (thingsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureThingsIsMutable();
          things_.set(index, value);
          onChanged();
        } else {
          thingsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder setThings(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (thingsBuilder_ == null) {
          ensureThingsIsMutable();
          things_.set(index, builderForValue.build());
          onChanged();
        } else {
          thingsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder addThings(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (thingsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureThingsIsMutable();
          things_.add(value);
          onChanged();
        } else {
          thingsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder addThings(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (thingsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureThingsIsMutable();
          things_.add(index, value);
          onChanged();
        } else {
          thingsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder addThings(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (thingsBuilder_ == null) {
          ensureThingsIsMutable();
          things_.add(builderForValue.build());
          onChanged();
        } else {
          thingsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder addThings(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (thingsBuilder_ == null) {
          ensureThingsIsMutable();
          things_.add(index, builderForValue.build());
          onChanged();
        } else {
          thingsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder addAllThings(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> values) {
        if (thingsBuilder_ == null) {
          ensureThingsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, things_);
          onChanged();
        } else {
          thingsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder clearThings() {
        if (thingsBuilder_ == null) {
          things_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          thingsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public Builder removeThings(int index) {
        if (thingsBuilder_ == null) {
          ensureThingsIsMutable();
          things_.remove(index);
          onChanged();
        } else {
          thingsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder getThingsBuilder(
          int index) {
        return getThingsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getThingsOrBuilder(
          int index) {
        if (thingsBuilder_ == null) {
          return things_.get(index);  } else {
          return thingsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
           getThingsOrBuilderList() {
        if (thingsBuilder_ != null) {
          return thingsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(things_);
        }
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder addThingsBuilder() {
        return getThingsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.getDefaultInstance());
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder addThingsBuilder(
          int index) {
        return getThingsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.getDefaultInstance());
      }
      /**
       * <pre>
       *露营期间累计获得的物品，仅用于展示
       * </pre>
       *
       * <code>repeated .pb.PbThing things = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder> 
           getThingsBuilderList() {
        return getThingsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
          getThingsFieldBuilder() {
        if (thingsBuilder_ == null) {
          thingsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder>(
                  things_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          things_ = null;
        }
        return thingsBuilder_;
      }

      private long currCampTime_ ;
      /**
       * <pre>
       *本次露营持续的时间，毫秒
       * </pre>
       *
       * <code>int64 curr_camp_time = 2;</code>
       * @return The currCampTime.
       */
      public long getCurrCampTime() {
        return currCampTime_;
      }
      /**
       * <pre>
       *本次露营持续的时间，毫秒
       * </pre>
       *
       * <code>int64 curr_camp_time = 2;</code>
       * @param value The currCampTime to set.
       * @return This builder for chaining.
       */
      public Builder setCurrCampTime(long value) {
        
        currCampTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *本次露营持续的时间，毫秒
       * </pre>
       *
       * <code>int64 curr_camp_time = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearCurrCampTime() {
        
        currCampTime_ = 0L;
        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.MainlineEndCampResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineEndCampResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineEndCampResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *bossId
     * </pre>
     *
     * <code>int32 boss_id = 1;</code>
     * @return The bossId.
     */
    int getBossId();
  }
  /**
   * <pre>
   *挑战Boss时发一下这个打点
   * </pre>
   *
   * Protobuf type {@code pb.MainlineChallengeBossRequest}
   */
  public  static final class MainlineChallengeBossRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineChallengeBossRequest)
      MainlineChallengeBossRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineChallengeBossRequest.newBuilder() to construct.
    private MainlineChallengeBossRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineChallengeBossRequest() {
    }

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

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

              bossId_ = 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.mainline.Mainline.internal_static_pb_MainlineChallengeBossRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.Builder.class);
    }

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

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


      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 400018: 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.mainline.Mainline.MainlineChallengeBossRequest.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.MainlineChallengeBossRequest.Proto)
    }

    public static final int BOSS_ID_FIELD_NUMBER = 1;
    private int bossId_;
    /**
     * <pre>
     *bossId
     * </pre>
     *
     * <code>int32 boss_id = 1;</code>
     * @return The bossId.
     */
    public int getBossId() {
      return bossId_;
    }

    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 (bossId_ != 0) {
        output.writeInt32(1, bossId_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (bossId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, bossId_);
      }
      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.mainline.Mainline.MainlineChallengeBossRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest) obj;

      if (getBossId()
          != other.getBossId()) 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) + BOSS_ID_FIELD_NUMBER;
      hash = (53 * hash) + getBossId();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest 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.mainline.Mainline.MainlineChallengeBossRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest 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.mainline.Mainline.MainlineChallengeBossRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest 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.mainline.Mainline.MainlineChallengeBossRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest 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.mainline.Mainline.MainlineChallengeBossRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest 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.mainline.Mainline.MainlineChallengeBossRequest 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>
     *挑战Boss时发一下这个打点
     * </pre>
     *
     * Protobuf type {@code pb.MainlineChallengeBossRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineChallengeBossRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.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();
        bossId_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest(this);
        result.bossId_ = bossId_;
        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.mainline.Mainline.MainlineChallengeBossRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest.getDefaultInstance()) return this;
        if (other.getBossId() != 0) {
          setBossId(other.getBossId());
        }
        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.mainline.Mainline.MainlineChallengeBossRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int bossId_ ;
      /**
       * <pre>
       *bossId
       * </pre>
       *
       * <code>int32 boss_id = 1;</code>
       * @return The bossId.
       */
      public int getBossId() {
        return bossId_;
      }
      /**
       * <pre>
       *bossId
       * </pre>
       *
       * <code>int32 boss_id = 1;</code>
       * @param value The bossId to set.
       * @return This builder for chaining.
       */
      public Builder setBossId(int value) {
        
        bossId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *bossId
       * </pre>
       *
       * <code>int32 boss_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearBossId() {
        
        bossId_ = 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.MainlineChallengeBossRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineChallengeBossRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineChallengeBossResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineChallengeBossResponse)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code pb.MainlineChallengeBossResponse}
   */
  public  static final class MainlineChallengeBossResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineChallengeBossResponse)
      MainlineChallengeBossResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineChallengeBossResponse.newBuilder() to construct.
    private MainlineChallengeBossResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineChallengeBossResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineChallengeBossResponse(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineChallengeBossResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.Builder.class);
    }

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

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


      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 400018: 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.mainline.Mainline.MainlineChallengeBossResponse.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.MainlineChallengeBossResponse.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineChallengeBossResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse 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.mainline.Mainline.MainlineChallengeBossResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse 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.mainline.Mainline.MainlineChallengeBossResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse 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.mainline.Mainline.MainlineChallengeBossResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse 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.mainline.Mainline.MainlineChallengeBossResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse 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.mainline.Mainline.MainlineChallengeBossResponse 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.MainlineChallengeBossResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineChallengeBossResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineChallengeBossResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse(this);
        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.mainline.Mainline.MainlineChallengeBossResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineChallengeBossResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineChallengeBossResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineChallengeBossResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineChallengeBossResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineOpenCampAdvRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineOpenCampAdvRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *开启高级露营
   * </pre>
   *
   * Protobuf type {@code pb.MainlineOpenCampAdvRequest}
   */
  public  static final class MainlineOpenCampAdvRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineOpenCampAdvRequest)
      MainlineOpenCampAdvRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineOpenCampAdvRequest.newBuilder() to construct.
    private MainlineOpenCampAdvRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineOpenCampAdvRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineOpenCampAdvRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.Builder.class);
    }

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

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


      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 400019: 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.mainline.Mainline.MainlineOpenCampAdvRequest.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.MainlineOpenCampAdvRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineOpenCampAdvRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest 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.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest 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.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest 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.mainline.Mainline.MainlineOpenCampAdvRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest 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.mainline.Mainline.MainlineOpenCampAdvRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest 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.mainline.Mainline.MainlineOpenCampAdvRequest 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.MainlineOpenCampAdvRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineOpenCampAdvRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest(this);
        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.mainline.Mainline.MainlineOpenCampAdvRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineOpenCampAdvRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineOpenCampAdvRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineOpenCampAdvRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *高级露营结束时间，毫秒
     * </pre>
     *
     * <code>int64 camp_adv_end_time = 1;</code>
     * @return The campAdvEndTime.
     */
    long getCampAdvEndTime();

    /**
     * <pre>
     *已进行的高级修行次数
     * </pre>
     *
     * <code>int32 camp_adv_num = 2;</code>
     * @return The campAdvNum.
     */
    int getCampAdvNum();
  }
  /**
   * Protobuf type {@code pb.MainlineOpenCampAdvResponse}
   */
  public  static final class MainlineOpenCampAdvResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineOpenCampAdvResponse)
      MainlineOpenCampAdvResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineOpenCampAdvResponse.newBuilder() to construct.
    private MainlineOpenCampAdvResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineOpenCampAdvResponse() {
    }

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

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

              campAdvEndTime_ = input.readInt64();
              break;
            }
            case 16: {

              campAdvNum_ = 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.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.Builder.class);
    }

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

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


      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 400019: 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.mainline.Mainline.MainlineOpenCampAdvResponse.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.MainlineOpenCampAdvResponse.Proto)
    }

    public static final int CAMP_ADV_END_TIME_FIELD_NUMBER = 1;
    private long campAdvEndTime_;
    /**
     * <pre>
     *高级露营结束时间，毫秒
     * </pre>
     *
     * <code>int64 camp_adv_end_time = 1;</code>
     * @return The campAdvEndTime.
     */
    public long getCampAdvEndTime() {
      return campAdvEndTime_;
    }

    public static final int CAMP_ADV_NUM_FIELD_NUMBER = 2;
    private int campAdvNum_;
    /**
     * <pre>
     *已进行的高级修行次数
     * </pre>
     *
     * <code>int32 camp_adv_num = 2;</code>
     * @return The campAdvNum.
     */
    public int getCampAdvNum() {
      return campAdvNum_;
    }

    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 (campAdvEndTime_ != 0L) {
        output.writeInt64(1, campAdvEndTime_);
      }
      if (campAdvNum_ != 0) {
        output.writeInt32(2, campAdvNum_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (campAdvEndTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, campAdvEndTime_);
      }
      if (campAdvNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, campAdvNum_);
      }
      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.mainline.Mainline.MainlineOpenCampAdvResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse) obj;

      if (getCampAdvEndTime()
          != other.getCampAdvEndTime()) return false;
      if (getCampAdvNum()
          != other.getCampAdvNum()) 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) + CAMP_ADV_END_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getCampAdvEndTime());
      hash = (37 * hash) + CAMP_ADV_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getCampAdvNum();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse 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.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse 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.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse 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.mainline.Mainline.MainlineOpenCampAdvResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse 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.mainline.Mainline.MainlineOpenCampAdvResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse 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.mainline.Mainline.MainlineOpenCampAdvResponse 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.MainlineOpenCampAdvResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineOpenCampAdvResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.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();
        campAdvEndTime_ = 0L;

        campAdvNum_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenCampAdvResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse(this);
        result.campAdvEndTime_ = campAdvEndTime_;
        result.campAdvNum_ = campAdvNum_;
        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.mainline.Mainline.MainlineOpenCampAdvResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse.getDefaultInstance()) return this;
        if (other.getCampAdvEndTime() != 0L) {
          setCampAdvEndTime(other.getCampAdvEndTime());
        }
        if (other.getCampAdvNum() != 0) {
          setCampAdvNum(other.getCampAdvNum());
        }
        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.mainline.Mainline.MainlineOpenCampAdvResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long campAdvEndTime_ ;
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @return The campAdvEndTime.
       */
      public long getCampAdvEndTime() {
        return campAdvEndTime_;
      }
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @param value The campAdvEndTime to set.
       * @return This builder for chaining.
       */
      public Builder setCampAdvEndTime(long value) {
        
        campAdvEndTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *高级露营结束时间，毫秒
       * </pre>
       *
       * <code>int64 camp_adv_end_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearCampAdvEndTime() {
        
        campAdvEndTime_ = 0L;
        onChanged();
        return this;
      }

      private int campAdvNum_ ;
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 2;</code>
       * @return The campAdvNum.
       */
      public int getCampAdvNum() {
        return campAdvNum_;
      }
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 2;</code>
       * @param value The campAdvNum to set.
       * @return This builder for chaining.
       */
      public Builder setCampAdvNum(int value) {
        
        campAdvNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已进行的高级修行次数
       * </pre>
       *
       * <code>int32 camp_adv_num = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearCampAdvNum() {
        
        campAdvNum_ = 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.MainlineOpenCampAdvResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineOpenCampAdvResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenCampAdvResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineKillMonsterNumRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineKillMonsterNumRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *请求主线杀怪数量
   * </pre>
   *
   * Protobuf type {@code pb.MainlineKillMonsterNumRequest}
   */
  public  static final class MainlineKillMonsterNumRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineKillMonsterNumRequest)
      MainlineKillMonsterNumRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineKillMonsterNumRequest.newBuilder() to construct.
    private MainlineKillMonsterNumRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineKillMonsterNumRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineKillMonsterNumRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.Builder.class);
    }

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

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


      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 400020: 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.mainline.Mainline.MainlineKillMonsterNumRequest.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.MainlineKillMonsterNumRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineKillMonsterNumRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest 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.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest 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.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest 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.mainline.Mainline.MainlineKillMonsterNumRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest 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.mainline.Mainline.MainlineKillMonsterNumRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest 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.mainline.Mainline.MainlineKillMonsterNumRequest 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.MainlineKillMonsterNumRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineKillMonsterNumRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest(this);
        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.mainline.Mainline.MainlineKillMonsterNumRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineKillMonsterNumRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineKillMonsterNumRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineKillMonsterNumRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <code>int32 kill_num = 1;</code>
     * @return The killNum.
     */
    int getKillNum();
  }
  /**
   * Protobuf type {@code pb.MainlineKillMonsterNumResponse}
   */
  public  static final class MainlineKillMonsterNumResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineKillMonsterNumResponse)
      MainlineKillMonsterNumResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineKillMonsterNumResponse.newBuilder() to construct.
    private MainlineKillMonsterNumResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineKillMonsterNumResponse() {
    }

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

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

              killNum_ = 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.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.Builder.class);
    }

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

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


      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 400020: 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.mainline.Mainline.MainlineKillMonsterNumResponse.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.MainlineKillMonsterNumResponse.Proto)
    }

    public static final int KILL_NUM_FIELD_NUMBER = 1;
    private int killNum_;
    /**
     * <code>int32 kill_num = 1;</code>
     * @return The killNum.
     */
    public int getKillNum() {
      return killNum_;
    }

    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 (killNum_ != 0) {
        output.writeInt32(1, killNum_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (killNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, killNum_);
      }
      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.mainline.Mainline.MainlineKillMonsterNumResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse) obj;

      if (getKillNum()
          != other.getKillNum()) 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) + KILL_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getKillNum();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse 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.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse 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.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse 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.mainline.Mainline.MainlineKillMonsterNumResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse 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.mainline.Mainline.MainlineKillMonsterNumResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse 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.mainline.Mainline.MainlineKillMonsterNumResponse 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.MainlineKillMonsterNumResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineKillMonsterNumResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.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();
        killNum_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineKillMonsterNumResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse(this);
        result.killNum_ = killNum_;
        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.mainline.Mainline.MainlineKillMonsterNumResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse.getDefaultInstance()) return this;
        if (other.getKillNum() != 0) {
          setKillNum(other.getKillNum());
        }
        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.mainline.Mainline.MainlineKillMonsterNumResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int killNum_ ;
      /**
       * <code>int32 kill_num = 1;</code>
       * @return The killNum.
       */
      public int getKillNum() {
        return killNum_;
      }
      /**
       * <code>int32 kill_num = 1;</code>
       * @param value The killNum to set.
       * @return This builder for chaining.
       */
      public Builder setKillNum(int value) {
        
        killNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 kill_num = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearKillNum() {
        
        killNum_ = 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.MainlineKillMonsterNumResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineKillMonsterNumResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineKillMonsterNumResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineTakeHangRewardRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineTakeHangRewardRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *领取挂机奖励
   * </pre>
   *
   * Protobuf type {@code pb.MainlineTakeHangRewardRequest}
   */
  public  static final class MainlineTakeHangRewardRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTakeHangRewardRequest)
      MainlineTakeHangRewardRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTakeHangRewardRequest.newBuilder() to construct.
    private MainlineTakeHangRewardRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTakeHangRewardRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineTakeHangRewardRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.Builder.class);
    }

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

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


      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 400022: 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.mainline.Mainline.MainlineTakeHangRewardRequest.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.MainlineTakeHangRewardRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineTakeHangRewardRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest 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.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest 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.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest 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.mainline.Mainline.MainlineTakeHangRewardRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest 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.mainline.Mainline.MainlineTakeHangRewardRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest 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.mainline.Mainline.MainlineTakeHangRewardRequest 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.MainlineTakeHangRewardRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTakeHangRewardRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest(this);
        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.mainline.Mainline.MainlineTakeHangRewardRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineTakeHangRewardRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineTakeHangRewardRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTakeHangRewardRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *已挂机时间
     * </pre>
     *
     * <code>int64 hang_time = 1;</code>
     * @return The hangTime.
     */
    long getHangTime();

    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     * @return Whether the receipt field is set.
     */
    boolean hasReceipt();
    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     * @return The receipt.
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt();
    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder();
  }
  /**
   * Protobuf type {@code pb.MainlineTakeHangRewardResponse}
   */
  public  static final class MainlineTakeHangRewardResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTakeHangRewardResponse)
      MainlineTakeHangRewardResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTakeHangRewardResponse.newBuilder() to construct.
    private MainlineTakeHangRewardResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTakeHangRewardResponse() {
    }

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

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

              hangTime_ = input.readInt64();
              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder subBuilder = null;
              if (receipt_ != null) {
                subBuilder = receipt_.toBuilder();
              }
              receipt_ = input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(receipt_);
                receipt_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.Builder.class);
    }

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

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


      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 400022: 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.mainline.Mainline.MainlineTakeHangRewardResponse.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.MainlineTakeHangRewardResponse.Proto)
    }

    public static final int HANG_TIME_FIELD_NUMBER = 1;
    private long hangTime_;
    /**
     * <pre>
     *已挂机时间
     * </pre>
     *
     * <code>int64 hang_time = 1;</code>
     * @return The hangTime.
     */
    public long getHangTime() {
      return hangTime_;
    }

    public static final int RECEIPT_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt receipt_;
    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     * @return Whether the receipt field is set.
     */
    public boolean hasReceipt() {
      return receipt_ != null;
    }
    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     * @return The receipt.
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt() {
      return receipt_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
    }
    /**
     * <pre>
     *挂机收益
     * </pre>
     *
     * <code>.pb.PbThingReceipt receipt = 2;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder() {
      return getReceipt();
    }

    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 (hangTime_ != 0L) {
        output.writeInt64(1, hangTime_);
      }
      if (receipt_ != null) {
        output.writeMessage(2, getReceipt());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (hangTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, hangTime_);
      }
      if (receipt_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getReceipt());
      }
      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.mainline.Mainline.MainlineTakeHangRewardResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse) obj;

      if (getHangTime()
          != other.getHangTime()) return false;
      if (hasReceipt() != other.hasReceipt()) return false;
      if (hasReceipt()) {
        if (!getReceipt()
            .equals(other.getReceipt())) 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) + HANG_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getHangTime());
      if (hasReceipt()) {
        hash = (37 * hash) + RECEIPT_FIELD_NUMBER;
        hash = (53 * hash) + getReceipt().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse 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.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse 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.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse 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.mainline.Mainline.MainlineTakeHangRewardResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse 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.mainline.Mainline.MainlineTakeHangRewardResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse 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.mainline.Mainline.MainlineTakeHangRewardResponse 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.MainlineTakeHangRewardResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTakeHangRewardResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.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();
        hangTime_ = 0L;

        if (receiptBuilder_ == null) {
          receipt_ = null;
        } else {
          receipt_ = null;
          receiptBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTakeHangRewardResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse(this);
        result.hangTime_ = hangTime_;
        if (receiptBuilder_ == null) {
          result.receipt_ = receipt_;
        } else {
          result.receipt_ = receiptBuilder_.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.mainline.Mainline.MainlineTakeHangRewardResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse.getDefaultInstance()) return this;
        if (other.getHangTime() != 0L) {
          setHangTime(other.getHangTime());
        }
        if (other.hasReceipt()) {
          mergeReceipt(other.getReceipt());
        }
        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.mainline.Mainline.MainlineTakeHangRewardResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long hangTime_ ;
      /**
       * <pre>
       *已挂机时间
       * </pre>
       *
       * <code>int64 hang_time = 1;</code>
       * @return The hangTime.
       */
      public long getHangTime() {
        return hangTime_;
      }
      /**
       * <pre>
       *已挂机时间
       * </pre>
       *
       * <code>int64 hang_time = 1;</code>
       * @param value The hangTime to set.
       * @return This builder for chaining.
       */
      public Builder setHangTime(long value) {
        
        hangTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已挂机时间
       * </pre>
       *
       * <code>int64 hang_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearHangTime() {
        
        hangTime_ = 0L;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt receipt_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder> receiptBuilder_;
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       * @return Whether the receipt field is set.
       */
      public boolean hasReceipt() {
        return receiptBuilder_ != null || receipt_ != null;
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       * @return The receipt.
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt getReceipt() {
        if (receiptBuilder_ == null) {
          return receipt_ == null ? pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
        } else {
          return receiptBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public Builder setReceipt(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt value) {
        if (receiptBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          receipt_ = value;
          onChanged();
        } else {
          receiptBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public Builder setReceipt(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder builderForValue) {
        if (receiptBuilder_ == null) {
          receipt_ = builderForValue.build();
          onChanged();
        } else {
          receiptBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public Builder mergeReceipt(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt value) {
        if (receiptBuilder_ == null) {
          if (receipt_ != null) {
            receipt_ =
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.newBuilder(receipt_).mergeFrom(value).buildPartial();
          } else {
            receipt_ = value;
          }
          onChanged();
        } else {
          receiptBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public Builder clearReceipt() {
        if (receiptBuilder_ == null) {
          receipt_ = null;
          onChanged();
        } else {
          receipt_ = null;
          receiptBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder getReceiptBuilder() {
        
        onChanged();
        return getReceiptFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder getReceiptOrBuilder() {
        if (receiptBuilder_ != null) {
          return receiptBuilder_.getMessageOrBuilder();
        } else {
          return receipt_ == null ?
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.getDefaultInstance() : receipt_;
        }
      }
      /**
       * <pre>
       *挂机收益
       * </pre>
       *
       * <code>.pb.PbThingReceipt receipt = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder> 
          getReceiptFieldBuilder() {
        if (receiptBuilder_ == null) {
          receiptBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceipt.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingReceiptOrBuilder>(
                  getReceipt(),
                  getParentForChildren(),
                  isClean());
          receipt_ = null;
        }
        return receiptBuilder_;
      }
      @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.MainlineTakeHangRewardResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTakeHangRewardResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTakeHangRewardResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface MainlineTimeBoxFarawayRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.MainlineTimeBoxFarawayRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *远离时间宝箱时进行重置
   * </pre>
   *
   * Protobuf type {@code pb.MainlineTimeBoxFarawayRequest}
   */
  public  static final class MainlineTimeBoxFarawayRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTimeBoxFarawayRequest)
      MainlineTimeBoxFarawayRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTimeBoxFarawayRequest.newBuilder() to construct.
    private MainlineTimeBoxFarawayRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTimeBoxFarawayRequest() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private MainlineTimeBoxFarawayRequest(
        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;
            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.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.Builder.class);
    }

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

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


      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 400023: 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.mainline.Mainline.MainlineTimeBoxFarawayRequest.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.MainlineTimeBoxFarawayRequest.Proto)
    }

    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 {
      unknownFields.writeTo(output);
    }

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

      size = 0;
      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.mainline.Mainline.MainlineTimeBoxFarawayRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest) obj;

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

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.mainline.Mainline.MainlineTimeBoxFarawayRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.mainline.Mainline.MainlineTimeBoxFarawayRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.mainline.Mainline.MainlineTimeBoxFarawayRequest 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.MainlineTimeBoxFarawayRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTimeBoxFarawayRequest)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.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();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest(this);
        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.mainline.Mainline.MainlineTimeBoxFarawayRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest.getDefaultInstance()) return this;
        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.mainline.Mainline.MainlineTimeBoxFarawayRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        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.MainlineTimeBoxFarawayRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTimeBoxFarawayRequest)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 1;</code>
     * @return The nextBoxTime.
     */
    long getNextBoxTime();
  }
  /**
   * Protobuf type {@code pb.MainlineTimeBoxFarawayResponse}
   */
  public  static final class MainlineTimeBoxFarawayResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineTimeBoxFarawayResponse)
      MainlineTimeBoxFarawayResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineTimeBoxFarawayResponse.newBuilder() to construct.
    private MainlineTimeBoxFarawayResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineTimeBoxFarawayResponse() {
    }

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

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

              nextBoxTime_ = input.readInt64();
              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.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.Builder.class);
    }

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

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


      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 400023: 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.mainline.Mainline.MainlineTimeBoxFarawayResponse.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.MainlineTimeBoxFarawayResponse.Proto)
    }

    public static final int NEXT_BOX_TIME_FIELD_NUMBER = 1;
    private long nextBoxTime_;
    /**
     * <pre>
     *下次出现地图宝箱的时间，毫秒
     * </pre>
     *
     * <code>int64 next_box_time = 1;</code>
     * @return The nextBoxTime.
     */
    public long getNextBoxTime() {
      return nextBoxTime_;
    }

    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 (nextBoxTime_ != 0L) {
        output.writeInt64(1, nextBoxTime_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (nextBoxTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, nextBoxTime_);
      }
      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.mainline.Mainline.MainlineTimeBoxFarawayResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse) obj;

      if (getNextBoxTime()
          != other.getNextBoxTime()) 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) + NEXT_BOX_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getNextBoxTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.mainline.Mainline.MainlineTimeBoxFarawayResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.mainline.Mainline.MainlineTimeBoxFarawayResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.mainline.Mainline.MainlineTimeBoxFarawayResponse 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.MainlineTimeBoxFarawayResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineTimeBoxFarawayResponse)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.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();
        nextBoxTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse(this);
        result.nextBoxTime_ = nextBoxTime_;
        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.mainline.Mainline.MainlineTimeBoxFarawayResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse.getDefaultInstance()) return this;
        if (other.getNextBoxTime() != 0L) {
          setNextBoxTime(other.getNextBoxTime());
        }
        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.mainline.Mainline.MainlineTimeBoxFarawayResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long nextBoxTime_ ;
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @return The nextBoxTime.
       */
      public long getNextBoxTime() {
        return nextBoxTime_;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @param value The nextBoxTime to set.
       * @return This builder for chaining.
       */
      public Builder setNextBoxTime(long value) {
        
        nextBoxTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *下次出现地图宝箱的时间，毫秒
       * </pre>
       *
       * <code>int64 next_box_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearNextBoxTime() {
        
        nextBoxTime_ = 0L;
        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.MainlineTimeBoxFarawayResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineTimeBoxFarawayResponse)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineTimeBoxFarawayResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *当前的场景ID
     * </pre>
     *
     * <code>int32 curr_scene_id = 1;</code>
     * @return The currSceneId.
     */
    int getCurrSceneId();

    /**
     * <pre>
     *是否已经开启下一场景
     * </pre>
     *
     * <code>bool curr_open_next = 2;</code>
     * @return The currOpenNext.
     */
    boolean getCurrOpenNext();

    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     * @return Whether the newScene field is set.
     */
    boolean hasNewScene();
    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     * @return The newScene.
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getNewScene();
    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     */
    pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getNewSceneOrBuilder();
  }
  /**
   * <pre>
   *解锁下一场景入口传送门
   * </pre>
   *
   * Protobuf type {@code pb.MainlineOpenNextMessage}
   */
  public  static final class MainlineOpenNextMessage extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.MainlineOpenNextMessage)
      MainlineOpenNextMessageOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use MainlineOpenNextMessage.newBuilder() to construct.
    private MainlineOpenNextMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private MainlineOpenNextMessage() {
    }

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

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

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

              currOpenNext_ = input.readBool();
              break;
            }
            case 26: {
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder subBuilder = null;
              if (newScene_ != null) {
                subBuilder = newScene_.toBuilder();
              }
              newScene_ = input.readMessage(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(newScene_);
                newScene_ = 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 {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenNextMessage_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenNextMessage_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.Builder.class);
    }

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

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


      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 400024: 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.mainline.Mainline.MainlineOpenNextMessage.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.MainlineOpenNextMessage.Proto)
    }

    public static final int CURR_SCENE_ID_FIELD_NUMBER = 1;
    private int currSceneId_;
    /**
     * <pre>
     *当前的场景ID
     * </pre>
     *
     * <code>int32 curr_scene_id = 1;</code>
     * @return The currSceneId.
     */
    public int getCurrSceneId() {
      return currSceneId_;
    }

    public static final int CURR_OPEN_NEXT_FIELD_NUMBER = 2;
    private boolean currOpenNext_;
    /**
     * <pre>
     *是否已经开启下一场景
     * </pre>
     *
     * <code>bool curr_open_next = 2;</code>
     * @return The currOpenNext.
     */
    public boolean getCurrOpenNext() {
      return currOpenNext_;
    }

    public static final int NEW_SCENE_FIELD_NUMBER = 3;
    private pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene newScene_;
    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     * @return Whether the newScene field is set.
     */
    public boolean hasNewScene() {
      return newScene_ != null;
    }
    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     * @return The newScene.
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getNewScene() {
      return newScene_ == null ? pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance() : newScene_;
    }
    /**
     * <pre>
     *新解锁的场景数据
     * </pre>
     *
     * <code>.pb.PbMainlineScene new_scene = 3;</code>
     */
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getNewSceneOrBuilder() {
      return getNewScene();
    }

    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 (currSceneId_ != 0) {
        output.writeInt32(1, currSceneId_);
      }
      if (currOpenNext_ != false) {
        output.writeBool(2, currOpenNext_);
      }
      if (newScene_ != null) {
        output.writeMessage(3, getNewScene());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (currSceneId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, currSceneId_);
      }
      if (currOpenNext_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, currOpenNext_);
      }
      if (newScene_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getNewScene());
      }
      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.mainline.Mainline.MainlineOpenNextMessage)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage other = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage) obj;

      if (getCurrSceneId()
          != other.getCurrSceneId()) return false;
      if (getCurrOpenNext()
          != other.getCurrOpenNext()) return false;
      if (hasNewScene() != other.hasNewScene()) return false;
      if (hasNewScene()) {
        if (!getNewScene()
            .equals(other.getNewScene())) 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) + CURR_SCENE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCurrSceneId();
      hash = (37 * hash) + CURR_OPEN_NEXT_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getCurrOpenNext());
      if (hasNewScene()) {
        hash = (37 * hash) + NEW_SCENE_FIELD_NUMBER;
        hash = (53 * hash) + getNewScene().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage 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.mainline.Mainline.MainlineOpenNextMessage parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage 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.mainline.Mainline.MainlineOpenNextMessage parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage 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.mainline.Mainline.MainlineOpenNextMessage parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage 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.mainline.Mainline.MainlineOpenNextMessage parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage 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.mainline.Mainline.MainlineOpenNextMessage 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.MainlineOpenNextMessage}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.MainlineOpenNextMessage)
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessageOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenNextMessage_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenNextMessage_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.class, pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.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();
        currSceneId_ = 0;

        currOpenNext_ = false;

        if (newSceneBuilder_ == null) {
          newScene_ = null;
        } else {
          newScene_ = null;
          newSceneBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_MainlineOpenNextMessage_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage result = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage(this);
        result.currSceneId_ = currSceneId_;
        result.currOpenNext_ = currOpenNext_;
        if (newSceneBuilder_ == null) {
          result.newScene_ = newScene_;
        } else {
          result.newScene_ = newSceneBuilder_.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.mainline.Mainline.MainlineOpenNextMessage) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage.getDefaultInstance()) return this;
        if (other.getCurrSceneId() != 0) {
          setCurrSceneId(other.getCurrSceneId());
        }
        if (other.getCurrOpenNext() != false) {
          setCurrOpenNext(other.getCurrOpenNext());
        }
        if (other.hasNewScene()) {
          mergeNewScene(other.getNewScene());
        }
        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.mainline.Mainline.MainlineOpenNextMessage parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int currSceneId_ ;
      /**
       * <pre>
       *当前的场景ID
       * </pre>
       *
       * <code>int32 curr_scene_id = 1;</code>
       * @return The currSceneId.
       */
      public int getCurrSceneId() {
        return currSceneId_;
      }
      /**
       * <pre>
       *当前的场景ID
       * </pre>
       *
       * <code>int32 curr_scene_id = 1;</code>
       * @param value The currSceneId to set.
       * @return This builder for chaining.
       */
      public Builder setCurrSceneId(int value) {
        
        currSceneId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *当前的场景ID
       * </pre>
       *
       * <code>int32 curr_scene_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearCurrSceneId() {
        
        currSceneId_ = 0;
        onChanged();
        return this;
      }

      private boolean currOpenNext_ ;
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool curr_open_next = 2;</code>
       * @return The currOpenNext.
       */
      public boolean getCurrOpenNext() {
        return currOpenNext_;
      }
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool curr_open_next = 2;</code>
       * @param value The currOpenNext to set.
       * @return This builder for chaining.
       */
      public Builder setCurrOpenNext(boolean value) {
        
        currOpenNext_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool curr_open_next = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearCurrOpenNext() {
        
        currOpenNext_ = false;
        onChanged();
        return this;
      }

      private pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene newScene_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> newSceneBuilder_;
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       * @return Whether the newScene field is set.
       */
      public boolean hasNewScene() {
        return newSceneBuilder_ != null || newScene_ != null;
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       * @return The newScene.
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getNewScene() {
        if (newSceneBuilder_ == null) {
          return newScene_ == null ? pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance() : newScene_;
        } else {
          return newSceneBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public Builder setNewScene(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene value) {
        if (newSceneBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          newScene_ = value;
          onChanged();
        } else {
          newSceneBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public Builder setNewScene(
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder builderForValue) {
        if (newSceneBuilder_ == null) {
          newScene_ = builderForValue.build();
          onChanged();
        } else {
          newSceneBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public Builder mergeNewScene(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene value) {
        if (newSceneBuilder_ == null) {
          if (newScene_ != null) {
            newScene_ =
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.newBuilder(newScene_).mergeFrom(value).buildPartial();
          } else {
            newScene_ = value;
          }
          onChanged();
        } else {
          newSceneBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public Builder clearNewScene() {
        if (newSceneBuilder_ == null) {
          newScene_ = null;
          onChanged();
        } else {
          newScene_ = null;
          newSceneBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder getNewSceneBuilder() {
        
        onChanged();
        return getNewSceneFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder getNewSceneOrBuilder() {
        if (newSceneBuilder_ != null) {
          return newSceneBuilder_.getMessageOrBuilder();
        } else {
          return newScene_ == null ?
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance() : newScene_;
        }
      }
      /**
       * <pre>
       *新解锁的场景数据
       * </pre>
       *
       * <code>.pb.PbMainlineScene new_scene = 3;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder> 
          getNewSceneFieldBuilder() {
        if (newSceneBuilder_ == null) {
          newSceneBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder>(
                  getNewScene(),
                  getParentForChildren(),
                  isClean());
          newScene_ = null;
        }
        return newSceneBuilder_;
      }
      @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.MainlineOpenNextMessage)
    }

    // @@protoc_insertion_point(class_scope:pb.MainlineOpenNextMessage)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.MainlineOpenNextMessage getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *场景ID
     * </pre>
     *
     * <code>int32 scene_id = 1;</code>
     * @return The sceneId.
     */
    int getSceneId();

    /**
     * <pre>
     *最大可挑战阶段
     * </pre>
     *
     * <code>int32 max_stage = 2;</code>
     * @return The maxStage.
     */
    int getMaxStage();

    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @return A list containing the firstStages.
     */
    java.util.List<java.lang.Integer> getFirstStagesList();
    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @return The count of firstStages.
     */
    int getFirstStagesCount();
    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @param index The index of the element to return.
     * @return The firstStages at the given index.
     */
    int getFirstStages(int index);

    /**
     * <pre>
     *当前挑战阶段
     * </pre>
     *
     * <code>int32 curr_stage = 4;</code>
     * @return The currStage.
     */
    int getCurrStage();

    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @return A list containing the teleports.
     */
    java.util.List<java.lang.Integer> getTeleportsList();
    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @return The count of teleports.
     */
    int getTeleportsCount();
    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @param index The index of the element to return.
     * @return The teleports at the given index.
     */
    int getTeleports(int index);

    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> 
        getOpeningTeleportsList();
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleports(int index);
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    int getOpeningTeleportsCount();
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningTeleportsOrBuilderList();
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportsOrBuilder(
        int index);

    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @return A list containing the fogs.
     */
    java.util.List<java.lang.Integer> getFogsList();
    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @return The count of fogs.
     */
    int getFogsCount();
    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @param index The index of the element to return.
     * @return The fogs at the given index.
     */
    int getFogs(int index);

    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> 
        getOpeningFogsList();
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFogs(int index);
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    int getOpeningFogsCount();
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningFogsOrBuilderList();
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogsOrBuilder(
        int index);

    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @return A list containing the npcs.
     */
    java.util.List<java.lang.Integer> getNpcsList();
    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @return The count of npcs.
     */
    int getNpcsCount();
    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @param index The index of the element to return.
     * @return The npcs at the given index.
     */
    int getNpcs(int index);

    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> 
        getOpeningNpcsList();
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpcs(int index);
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    int getOpeningNpcsCount();
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningNpcsOrBuilderList();
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcsOrBuilder(
        int index);

    /**
     * <pre>
     *传送门坐标，为0表示没有传送门
     * </pre>
     *
     * <code>int32 portal_x = 11;</code>
     * @return The portalX.
     */
    int getPortalX();

    /**
     * <pre>
     *传送门
     * </pre>
     *
     * <code>int32 portal_y = 12;</code>
     * @return The portalY.
     */
    int getPortalY();

    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @return A list containing the dungeons.
     */
    java.util.List<java.lang.Integer> getDungeonsList();
    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @return The count of dungeons.
     */
    int getDungeonsCount();
    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @param index The index of the element to return.
     * @return The dungeons at the given index.
     */
    int getDungeons(int index);

    /**
     * <pre>
     *是否已经开启下一场景
     * </pre>
     *
     * <code>bool open_next = 14;</code>
     * @return The openNext.
     */
    boolean getOpenNext();
  }
  /**
   * Protobuf type {@code pb.PbMainlineScene}
   */
  public  static final class PbMainlineScene extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbMainlineScene)
      PbMainlineSceneOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbMainlineScene.newBuilder() to construct.
    private PbMainlineScene(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbMainlineScene() {
      firstStages_ = emptyIntList();
      teleports_ = emptyIntList();
      openingTeleports_ = java.util.Collections.emptyList();
      fogs_ = emptyIntList();
      openingFogs_ = java.util.Collections.emptyList();
      npcs_ = emptyIntList();
      openingNpcs_ = java.util.Collections.emptyList();
      dungeons_ = emptyIntList();
    }

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

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

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

              maxStage_ = input.readInt32();
              break;
            }
            case 24: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                firstStages_ = newIntList();
                mutable_bitField0_ |= 0x00000001;
              }
              firstStages_.addInt(input.readInt32());
              break;
            }
            case 26: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000001) != 0) && input.getBytesUntilLimit() > 0) {
                firstStages_ = newIntList();
                mutable_bitField0_ |= 0x00000001;
              }
              while (input.getBytesUntilLimit() > 0) {
                firstStages_.addInt(input.readInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 32: {

              currStage_ = input.readInt32();
              break;
            }
            case 40: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                teleports_ = newIntList();
                mutable_bitField0_ |= 0x00000002;
              }
              teleports_.addInt(input.readInt32());
              break;
            }
            case 42: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000002) != 0) && input.getBytesUntilLimit() > 0) {
                teleports_ = newIntList();
                mutable_bitField0_ |= 0x00000002;
              }
              while (input.getBytesUntilLimit() > 0) {
                teleports_.addInt(input.readInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 50: {
              if (!((mutable_bitField0_ & 0x00000004) != 0)) {
                openingTeleports_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>();
                mutable_bitField0_ |= 0x00000004;
              }
              openingTeleports_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry));
              break;
            }
            case 56: {
              if (!((mutable_bitField0_ & 0x00000008) != 0)) {
                fogs_ = newIntList();
                mutable_bitField0_ |= 0x00000008;
              }
              fogs_.addInt(input.readInt32());
              break;
            }
            case 58: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000008) != 0) && input.getBytesUntilLimit() > 0) {
                fogs_ = newIntList();
                mutable_bitField0_ |= 0x00000008;
              }
              while (input.getBytesUntilLimit() > 0) {
                fogs_.addInt(input.readInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 66: {
              if (!((mutable_bitField0_ & 0x00000010) != 0)) {
                openingFogs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>();
                mutable_bitField0_ |= 0x00000010;
              }
              openingFogs_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry));
              break;
            }
            case 72: {
              if (!((mutable_bitField0_ & 0x00000020) != 0)) {
                npcs_ = newIntList();
                mutable_bitField0_ |= 0x00000020;
              }
              npcs_.addInt(input.readInt32());
              break;
            }
            case 74: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000020) != 0) && input.getBytesUntilLimit() > 0) {
                npcs_ = newIntList();
                mutable_bitField0_ |= 0x00000020;
              }
              while (input.getBytesUntilLimit() > 0) {
                npcs_.addInt(input.readInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 82: {
              if (!((mutable_bitField0_ & 0x00000040) != 0)) {
                openingNpcs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>();
                mutable_bitField0_ |= 0x00000040;
              }
              openingNpcs_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.parser(), extensionRegistry));
              break;
            }
            case 88: {

              portalX_ = input.readInt32();
              break;
            }
            case 96: {

              portalY_ = input.readInt32();
              break;
            }
            case 104: {
              if (!((mutable_bitField0_ & 0x00000080) != 0)) {
                dungeons_ = newIntList();
                mutable_bitField0_ |= 0x00000080;
              }
              dungeons_.addInt(input.readInt32());
              break;
            }
            case 106: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000080) != 0) && input.getBytesUntilLimit() > 0) {
                dungeons_ = newIntList();
                mutable_bitField0_ |= 0x00000080;
              }
              while (input.getBytesUntilLimit() > 0) {
                dungeons_.addInt(input.readInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 112: {

              openNext_ = 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 {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          firstStages_.makeImmutable(); // C
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          teleports_.makeImmutable(); // C
        }
        if (((mutable_bitField0_ & 0x00000004) != 0)) {
          openingTeleports_ = java.util.Collections.unmodifiableList(openingTeleports_);
        }
        if (((mutable_bitField0_ & 0x00000008) != 0)) {
          fogs_.makeImmutable(); // C
        }
        if (((mutable_bitField0_ & 0x00000010) != 0)) {
          openingFogs_ = java.util.Collections.unmodifiableList(openingFogs_);
        }
        if (((mutable_bitField0_ & 0x00000020) != 0)) {
          npcs_.makeImmutable(); // C
        }
        if (((mutable_bitField0_ & 0x00000040) != 0)) {
          openingNpcs_ = java.util.Collections.unmodifiableList(openingNpcs_);
        }
        if (((mutable_bitField0_ & 0x00000080) != 0)) {
          dungeons_.makeImmutable(); // C
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineScene_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineScene_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder.class);
    }

    public static final int SCENE_ID_FIELD_NUMBER = 1;
    private int sceneId_;
    /**
     * <pre>
     *场景ID
     * </pre>
     *
     * <code>int32 scene_id = 1;</code>
     * @return The sceneId.
     */
    public int getSceneId() {
      return sceneId_;
    }

    public static final int MAX_STAGE_FIELD_NUMBER = 2;
    private int maxStage_;
    /**
     * <pre>
     *最大可挑战阶段
     * </pre>
     *
     * <code>int32 max_stage = 2;</code>
     * @return The maxStage.
     */
    public int getMaxStage() {
      return maxStage_;
    }

    public static final int FIRST_STAGES_FIELD_NUMBER = 3;
    private com.google.protobuf.Internal.IntList firstStages_;
    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @return A list containing the firstStages.
     */
    public java.util.List<java.lang.Integer>
        getFirstStagesList() {
      return firstStages_;
    }
    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @return The count of firstStages.
     */
    public int getFirstStagesCount() {
      return firstStages_.size();
    }
    /**
     * <pre>
     *已领取首通奖励的阶段
     * </pre>
     *
     * <code>repeated int32 first_stages = 3;</code>
     * @param index The index of the element to return.
     * @return The firstStages at the given index.
     */
    public int getFirstStages(int index) {
      return firstStages_.getInt(index);
    }
    private int firstStagesMemoizedSerializedSize = -1;

    public static final int CURR_STAGE_FIELD_NUMBER = 4;
    private int currStage_;
    /**
     * <pre>
     *当前挑战阶段
     * </pre>
     *
     * <code>int32 curr_stage = 4;</code>
     * @return The currStage.
     */
    public int getCurrStage() {
      return currStage_;
    }

    public static final int TELEPORTS_FIELD_NUMBER = 5;
    private com.google.protobuf.Internal.IntList teleports_;
    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @return A list containing the teleports.
     */
    public java.util.List<java.lang.Integer>
        getTeleportsList() {
      return teleports_;
    }
    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @return The count of teleports.
     */
    public int getTeleportsCount() {
      return teleports_.size();
    }
    /**
     * <pre>
     *已经开启的传送点
     * </pre>
     *
     * <code>repeated int32 teleports = 5;</code>
     * @param index The index of the element to return.
     * @return The teleports at the given index.
     */
    public int getTeleports(int index) {
      return teleports_.getInt(index);
    }
    private int teleportsMemoizedSerializedSize = -1;

    public static final int OPENING_TELEPORTS_FIELD_NUMBER = 6;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingTeleports_;
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningTeleportsList() {
      return openingTeleports_;
    }
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningTeleportsOrBuilderList() {
      return openingTeleports_;
    }
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    public int getOpeningTeleportsCount() {
      return openingTeleports_.size();
    }
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleports(int index) {
      return openingTeleports_.get(index);
    }
    /**
     * <pre>
     *正在开启的传送点
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportsOrBuilder(
        int index) {
      return openingTeleports_.get(index);
    }

    public static final int FOGS_FIELD_NUMBER = 7;
    private com.google.protobuf.Internal.IntList fogs_;
    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @return A list containing the fogs.
     */
    public java.util.List<java.lang.Integer>
        getFogsList() {
      return fogs_;
    }
    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @return The count of fogs.
     */
    public int getFogsCount() {
      return fogs_.size();
    }
    /**
     * <pre>
     *已经开启的迷雾
     * </pre>
     *
     * <code>repeated int32 fogs = 7;</code>
     * @param index The index of the element to return.
     * @return The fogs at the given index.
     */
    public int getFogs(int index) {
      return fogs_.getInt(index);
    }
    private int fogsMemoizedSerializedSize = -1;

    public static final int OPENING_FOGS_FIELD_NUMBER = 8;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingFogs_;
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningFogsList() {
      return openingFogs_;
    }
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningFogsOrBuilderList() {
      return openingFogs_;
    }
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    public int getOpeningFogsCount() {
      return openingFogs_.size();
    }
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFogs(int index) {
      return openingFogs_.get(index);
    }
    /**
     * <pre>
     *正在开启的迷雾
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogsOrBuilder(
        int index) {
      return openingFogs_.get(index);
    }

    public static final int NPCS_FIELD_NUMBER = 9;
    private com.google.protobuf.Internal.IntList npcs_;
    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @return A list containing the npcs.
     */
    public java.util.List<java.lang.Integer>
        getNpcsList() {
      return npcs_;
    }
    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @return The count of npcs.
     */
    public int getNpcsCount() {
      return npcs_.size();
    }
    /**
     * <pre>
     *已经完成缴纳的npc
     * </pre>
     *
     * <code>repeated int32 npcs = 9;</code>
     * @param index The index of the element to return.
     * @return The npcs at the given index.
     */
    public int getNpcs(int index) {
      return npcs_.getInt(index);
    }
    private int npcsMemoizedSerializedSize = -1;

    public static final int OPENING_NPCS_FIELD_NUMBER = 10;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingNpcs_;
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningNpcsList() {
      return openingNpcs_;
    }
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
        getOpeningNpcsOrBuilderList() {
      return openingNpcs_;
    }
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    public int getOpeningNpcsCount() {
      return openingNpcs_.size();
    }
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpcs(int index) {
      return openingNpcs_.get(index);
    }
    /**
     * <pre>
     *正在缴纳的npc
     * </pre>
     *
     * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcsOrBuilder(
        int index) {
      return openingNpcs_.get(index);
    }

    public static final int PORTAL_X_FIELD_NUMBER = 11;
    private int portalX_;
    /**
     * <pre>
     *传送门坐标，为0表示没有传送门
     * </pre>
     *
     * <code>int32 portal_x = 11;</code>
     * @return The portalX.
     */
    public int getPortalX() {
      return portalX_;
    }

    public static final int PORTAL_Y_FIELD_NUMBER = 12;
    private int portalY_;
    /**
     * <pre>
     *传送门
     * </pre>
     *
     * <code>int32 portal_y = 12;</code>
     * @return The portalY.
     */
    public int getPortalY() {
      return portalY_;
    }

    public static final int DUNGEONS_FIELD_NUMBER = 13;
    private com.google.protobuf.Internal.IntList dungeons_;
    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @return A list containing the dungeons.
     */
    public java.util.List<java.lang.Integer>
        getDungeonsList() {
      return dungeons_;
    }
    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @return The count of dungeons.
     */
    public int getDungeonsCount() {
      return dungeons_.size();
    }
    /**
     * <pre>
     *已通关的地下城副本ID
     * </pre>
     *
     * <code>repeated int32 dungeons = 13;</code>
     * @param index The index of the element to return.
     * @return The dungeons at the given index.
     */
    public int getDungeons(int index) {
      return dungeons_.getInt(index);
    }
    private int dungeonsMemoizedSerializedSize = -1;

    public static final int OPEN_NEXT_FIELD_NUMBER = 14;
    private boolean openNext_;
    /**
     * <pre>
     *是否已经开启下一场景
     * </pre>
     *
     * <code>bool open_next = 14;</code>
     * @return The openNext.
     */
    public boolean getOpenNext() {
      return openNext_;
    }

    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 {
      getSerializedSize();
      if (sceneId_ != 0) {
        output.writeInt32(1, sceneId_);
      }
      if (maxStage_ != 0) {
        output.writeInt32(2, maxStage_);
      }
      if (getFirstStagesList().size() > 0) {
        output.writeUInt32NoTag(26);
        output.writeUInt32NoTag(firstStagesMemoizedSerializedSize);
      }
      for (int i = 0; i < firstStages_.size(); i++) {
        output.writeInt32NoTag(firstStages_.getInt(i));
      }
      if (currStage_ != 0) {
        output.writeInt32(4, currStage_);
      }
      if (getTeleportsList().size() > 0) {
        output.writeUInt32NoTag(42);
        output.writeUInt32NoTag(teleportsMemoizedSerializedSize);
      }
      for (int i = 0; i < teleports_.size(); i++) {
        output.writeInt32NoTag(teleports_.getInt(i));
      }
      for (int i = 0; i < openingTeleports_.size(); i++) {
        output.writeMessage(6, openingTeleports_.get(i));
      }
      if (getFogsList().size() > 0) {
        output.writeUInt32NoTag(58);
        output.writeUInt32NoTag(fogsMemoizedSerializedSize);
      }
      for (int i = 0; i < fogs_.size(); i++) {
        output.writeInt32NoTag(fogs_.getInt(i));
      }
      for (int i = 0; i < openingFogs_.size(); i++) {
        output.writeMessage(8, openingFogs_.get(i));
      }
      if (getNpcsList().size() > 0) {
        output.writeUInt32NoTag(74);
        output.writeUInt32NoTag(npcsMemoizedSerializedSize);
      }
      for (int i = 0; i < npcs_.size(); i++) {
        output.writeInt32NoTag(npcs_.getInt(i));
      }
      for (int i = 0; i < openingNpcs_.size(); i++) {
        output.writeMessage(10, openingNpcs_.get(i));
      }
      if (portalX_ != 0) {
        output.writeInt32(11, portalX_);
      }
      if (portalY_ != 0) {
        output.writeInt32(12, portalY_);
      }
      if (getDungeonsList().size() > 0) {
        output.writeUInt32NoTag(106);
        output.writeUInt32NoTag(dungeonsMemoizedSerializedSize);
      }
      for (int i = 0; i < dungeons_.size(); i++) {
        output.writeInt32NoTag(dungeons_.getInt(i));
      }
      if (openNext_ != false) {
        output.writeBool(14, openNext_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (sceneId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, sceneId_);
      }
      if (maxStage_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, maxStage_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < firstStages_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(firstStages_.getInt(i));
        }
        size += dataSize;
        if (!getFirstStagesList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        firstStagesMemoizedSerializedSize = dataSize;
      }
      if (currStage_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, currStage_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < teleports_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(teleports_.getInt(i));
        }
        size += dataSize;
        if (!getTeleportsList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        teleportsMemoizedSerializedSize = dataSize;
      }
      for (int i = 0; i < openingTeleports_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, openingTeleports_.get(i));
      }
      {
        int dataSize = 0;
        for (int i = 0; i < fogs_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(fogs_.getInt(i));
        }
        size += dataSize;
        if (!getFogsList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        fogsMemoizedSerializedSize = dataSize;
      }
      for (int i = 0; i < openingFogs_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(8, openingFogs_.get(i));
      }
      {
        int dataSize = 0;
        for (int i = 0; i < npcs_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(npcs_.getInt(i));
        }
        size += dataSize;
        if (!getNpcsList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        npcsMemoizedSerializedSize = dataSize;
      }
      for (int i = 0; i < openingNpcs_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(10, openingNpcs_.get(i));
      }
      if (portalX_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(11, portalX_);
      }
      if (portalY_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(12, portalY_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < dungeons_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(dungeons_.getInt(i));
        }
        size += dataSize;
        if (!getDungeonsList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        dungeonsMemoizedSerializedSize = dataSize;
      }
      if (openNext_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(14, openNext_);
      }
      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.mainline.Mainline.PbMainlineScene)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene other = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene) obj;

      if (getSceneId()
          != other.getSceneId()) return false;
      if (getMaxStage()
          != other.getMaxStage()) return false;
      if (!getFirstStagesList()
          .equals(other.getFirstStagesList())) return false;
      if (getCurrStage()
          != other.getCurrStage()) return false;
      if (!getTeleportsList()
          .equals(other.getTeleportsList())) return false;
      if (!getOpeningTeleportsList()
          .equals(other.getOpeningTeleportsList())) return false;
      if (!getFogsList()
          .equals(other.getFogsList())) return false;
      if (!getOpeningFogsList()
          .equals(other.getOpeningFogsList())) return false;
      if (!getNpcsList()
          .equals(other.getNpcsList())) return false;
      if (!getOpeningNpcsList()
          .equals(other.getOpeningNpcsList())) return false;
      if (getPortalX()
          != other.getPortalX()) return false;
      if (getPortalY()
          != other.getPortalY()) return false;
      if (!getDungeonsList()
          .equals(other.getDungeonsList())) return false;
      if (getOpenNext()
          != other.getOpenNext()) 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) + SCENE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getSceneId();
      hash = (37 * hash) + MAX_STAGE_FIELD_NUMBER;
      hash = (53 * hash) + getMaxStage();
      if (getFirstStagesCount() > 0) {
        hash = (37 * hash) + FIRST_STAGES_FIELD_NUMBER;
        hash = (53 * hash) + getFirstStagesList().hashCode();
      }
      hash = (37 * hash) + CURR_STAGE_FIELD_NUMBER;
      hash = (53 * hash) + getCurrStage();
      if (getTeleportsCount() > 0) {
        hash = (37 * hash) + TELEPORTS_FIELD_NUMBER;
        hash = (53 * hash) + getTeleportsList().hashCode();
      }
      if (getOpeningTeleportsCount() > 0) {
        hash = (37 * hash) + OPENING_TELEPORTS_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningTeleportsList().hashCode();
      }
      if (getFogsCount() > 0) {
        hash = (37 * hash) + FOGS_FIELD_NUMBER;
        hash = (53 * hash) + getFogsList().hashCode();
      }
      if (getOpeningFogsCount() > 0) {
        hash = (37 * hash) + OPENING_FOGS_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningFogsList().hashCode();
      }
      if (getNpcsCount() > 0) {
        hash = (37 * hash) + NPCS_FIELD_NUMBER;
        hash = (53 * hash) + getNpcsList().hashCode();
      }
      if (getOpeningNpcsCount() > 0) {
        hash = (37 * hash) + OPENING_NPCS_FIELD_NUMBER;
        hash = (53 * hash) + getOpeningNpcsList().hashCode();
      }
      hash = (37 * hash) + PORTAL_X_FIELD_NUMBER;
      hash = (53 * hash) + getPortalX();
      hash = (37 * hash) + PORTAL_Y_FIELD_NUMBER;
      hash = (53 * hash) + getPortalY();
      if (getDungeonsCount() > 0) {
        hash = (37 * hash) + DUNGEONS_FIELD_NUMBER;
        hash = (53 * hash) + getDungeonsList().hashCode();
      }
      hash = (37 * hash) + OPEN_NEXT_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getOpenNext());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene 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.mainline.Mainline.PbMainlineScene parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene 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.mainline.Mainline.PbMainlineScene parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene 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.mainline.Mainline.PbMainlineScene parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene 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.mainline.Mainline.PbMainlineScene parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene 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.mainline.Mainline.PbMainlineScene 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.PbMainlineScene}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbMainlineScene)
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineSceneOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineScene_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineScene_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        maxStage_ = 0;

        firstStages_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000001);
        currStage_ = 0;

        teleports_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000002);
        if (openingTeleportsBuilder_ == null) {
          openingTeleports_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          openingTeleportsBuilder_.clear();
        }
        fogs_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000008);
        if (openingFogsBuilder_ == null) {
          openingFogs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000010);
        } else {
          openingFogsBuilder_.clear();
        }
        npcs_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000020);
        if (openingNpcsBuilder_ == null) {
          openingNpcs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
        } else {
          openingNpcsBuilder_.clear();
        }
        portalX_ = 0;

        portalY_ = 0;

        dungeons_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000080);
        openNext_ = false;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineScene_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene result = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene(this);
        int from_bitField0_ = bitField0_;
        result.sceneId_ = sceneId_;
        result.maxStage_ = maxStage_;
        if (((bitField0_ & 0x00000001) != 0)) {
          firstStages_.makeImmutable();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.firstStages_ = firstStages_;
        result.currStage_ = currStage_;
        if (((bitField0_ & 0x00000002) != 0)) {
          teleports_.makeImmutable();
          bitField0_ = (bitField0_ & ~0x00000002);
        }
        result.teleports_ = teleports_;
        if (openingTeleportsBuilder_ == null) {
          if (((bitField0_ & 0x00000004) != 0)) {
            openingTeleports_ = java.util.Collections.unmodifiableList(openingTeleports_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.openingTeleports_ = openingTeleports_;
        } else {
          result.openingTeleports_ = openingTeleportsBuilder_.build();
        }
        if (((bitField0_ & 0x00000008) != 0)) {
          fogs_.makeImmutable();
          bitField0_ = (bitField0_ & ~0x00000008);
        }
        result.fogs_ = fogs_;
        if (openingFogsBuilder_ == null) {
          if (((bitField0_ & 0x00000010) != 0)) {
            openingFogs_ = java.util.Collections.unmodifiableList(openingFogs_);
            bitField0_ = (bitField0_ & ~0x00000010);
          }
          result.openingFogs_ = openingFogs_;
        } else {
          result.openingFogs_ = openingFogsBuilder_.build();
        }
        if (((bitField0_ & 0x00000020) != 0)) {
          npcs_.makeImmutable();
          bitField0_ = (bitField0_ & ~0x00000020);
        }
        result.npcs_ = npcs_;
        if (openingNpcsBuilder_ == null) {
          if (((bitField0_ & 0x00000040) != 0)) {
            openingNpcs_ = java.util.Collections.unmodifiableList(openingNpcs_);
            bitField0_ = (bitField0_ & ~0x00000040);
          }
          result.openingNpcs_ = openingNpcs_;
        } else {
          result.openingNpcs_ = openingNpcsBuilder_.build();
        }
        result.portalX_ = portalX_;
        result.portalY_ = portalY_;
        if (((bitField0_ & 0x00000080) != 0)) {
          dungeons_.makeImmutable();
          bitField0_ = (bitField0_ & ~0x00000080);
        }
        result.dungeons_ = dungeons_;
        result.openNext_ = openNext_;
        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.mainline.Mainline.PbMainlineScene) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene.getDefaultInstance()) return this;
        if (other.getSceneId() != 0) {
          setSceneId(other.getSceneId());
        }
        if (other.getMaxStage() != 0) {
          setMaxStage(other.getMaxStage());
        }
        if (!other.firstStages_.isEmpty()) {
          if (firstStages_.isEmpty()) {
            firstStages_ = other.firstStages_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureFirstStagesIsMutable();
            firstStages_.addAll(other.firstStages_);
          }
          onChanged();
        }
        if (other.getCurrStage() != 0) {
          setCurrStage(other.getCurrStage());
        }
        if (!other.teleports_.isEmpty()) {
          if (teleports_.isEmpty()) {
            teleports_ = other.teleports_;
            bitField0_ = (bitField0_ & ~0x00000002);
          } else {
            ensureTeleportsIsMutable();
            teleports_.addAll(other.teleports_);
          }
          onChanged();
        }
        if (openingTeleportsBuilder_ == null) {
          if (!other.openingTeleports_.isEmpty()) {
            if (openingTeleports_.isEmpty()) {
              openingTeleports_ = other.openingTeleports_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensureOpeningTeleportsIsMutable();
              openingTeleports_.addAll(other.openingTeleports_);
            }
            onChanged();
          }
        } else {
          if (!other.openingTeleports_.isEmpty()) {
            if (openingTeleportsBuilder_.isEmpty()) {
              openingTeleportsBuilder_.dispose();
              openingTeleportsBuilder_ = null;
              openingTeleports_ = other.openingTeleports_;
              bitField0_ = (bitField0_ & ~0x00000004);
              openingTeleportsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getOpeningTeleportsFieldBuilder() : null;
            } else {
              openingTeleportsBuilder_.addAllMessages(other.openingTeleports_);
            }
          }
        }
        if (!other.fogs_.isEmpty()) {
          if (fogs_.isEmpty()) {
            fogs_ = other.fogs_;
            bitField0_ = (bitField0_ & ~0x00000008);
          } else {
            ensureFogsIsMutable();
            fogs_.addAll(other.fogs_);
          }
          onChanged();
        }
        if (openingFogsBuilder_ == null) {
          if (!other.openingFogs_.isEmpty()) {
            if (openingFogs_.isEmpty()) {
              openingFogs_ = other.openingFogs_;
              bitField0_ = (bitField0_ & ~0x00000010);
            } else {
              ensureOpeningFogsIsMutable();
              openingFogs_.addAll(other.openingFogs_);
            }
            onChanged();
          }
        } else {
          if (!other.openingFogs_.isEmpty()) {
            if (openingFogsBuilder_.isEmpty()) {
              openingFogsBuilder_.dispose();
              openingFogsBuilder_ = null;
              openingFogs_ = other.openingFogs_;
              bitField0_ = (bitField0_ & ~0x00000010);
              openingFogsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getOpeningFogsFieldBuilder() : null;
            } else {
              openingFogsBuilder_.addAllMessages(other.openingFogs_);
            }
          }
        }
        if (!other.npcs_.isEmpty()) {
          if (npcs_.isEmpty()) {
            npcs_ = other.npcs_;
            bitField0_ = (bitField0_ & ~0x00000020);
          } else {
            ensureNpcsIsMutable();
            npcs_.addAll(other.npcs_);
          }
          onChanged();
        }
        if (openingNpcsBuilder_ == null) {
          if (!other.openingNpcs_.isEmpty()) {
            if (openingNpcs_.isEmpty()) {
              openingNpcs_ = other.openingNpcs_;
              bitField0_ = (bitField0_ & ~0x00000040);
            } else {
              ensureOpeningNpcsIsMutable();
              openingNpcs_.addAll(other.openingNpcs_);
            }
            onChanged();
          }
        } else {
          if (!other.openingNpcs_.isEmpty()) {
            if (openingNpcsBuilder_.isEmpty()) {
              openingNpcsBuilder_.dispose();
              openingNpcsBuilder_ = null;
              openingNpcs_ = other.openingNpcs_;
              bitField0_ = (bitField0_ & ~0x00000040);
              openingNpcsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getOpeningNpcsFieldBuilder() : null;
            } else {
              openingNpcsBuilder_.addAllMessages(other.openingNpcs_);
            }
          }
        }
        if (other.getPortalX() != 0) {
          setPortalX(other.getPortalX());
        }
        if (other.getPortalY() != 0) {
          setPortalY(other.getPortalY());
        }
        if (!other.dungeons_.isEmpty()) {
          if (dungeons_.isEmpty()) {
            dungeons_ = other.dungeons_;
            bitField0_ = (bitField0_ & ~0x00000080);
          } else {
            ensureDungeonsIsMutable();
            dungeons_.addAll(other.dungeons_);
          }
          onChanged();
        }
        if (other.getOpenNext() != false) {
          setOpenNext(other.getOpenNext());
        }
        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.mainline.Mainline.PbMainlineScene parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int sceneId_ ;
      /**
       * <pre>
       *场景ID
       * </pre>
       *
       * <code>int32 scene_id = 1;</code>
       * @return The sceneId.
       */
      public int getSceneId() {
        return sceneId_;
      }
      /**
       * <pre>
       *场景ID
       * </pre>
       *
       * <code>int32 scene_id = 1;</code>
       * @param value The sceneId to set.
       * @return This builder for chaining.
       */
      public Builder setSceneId(int value) {
        
        sceneId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *场景ID
       * </pre>
       *
       * <code>int32 scene_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearSceneId() {
        
        sceneId_ = 0;
        onChanged();
        return this;
      }

      private int maxStage_ ;
      /**
       * <pre>
       *最大可挑战阶段
       * </pre>
       *
       * <code>int32 max_stage = 2;</code>
       * @return The maxStage.
       */
      public int getMaxStage() {
        return maxStage_;
      }
      /**
       * <pre>
       *最大可挑战阶段
       * </pre>
       *
       * <code>int32 max_stage = 2;</code>
       * @param value The maxStage to set.
       * @return This builder for chaining.
       */
      public Builder setMaxStage(int value) {
        
        maxStage_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *最大可挑战阶段
       * </pre>
       *
       * <code>int32 max_stage = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearMaxStage() {
        
        maxStage_ = 0;
        onChanged();
        return this;
      }

      private com.google.protobuf.Internal.IntList firstStages_ = emptyIntList();
      private void ensureFirstStagesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          firstStages_ = mutableCopy(firstStages_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @return A list containing the firstStages.
       */
      public java.util.List<java.lang.Integer>
          getFirstStagesList() {
        return ((bitField0_ & 0x00000001) != 0) ?
                 java.util.Collections.unmodifiableList(firstStages_) : firstStages_;
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @return The count of firstStages.
       */
      public int getFirstStagesCount() {
        return firstStages_.size();
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @param index The index of the element to return.
       * @return The firstStages at the given index.
       */
      public int getFirstStages(int index) {
        return firstStages_.getInt(index);
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @param index The index to set the value at.
       * @param value The firstStages to set.
       * @return This builder for chaining.
       */
      public Builder setFirstStages(
          int index, int value) {
        ensureFirstStagesIsMutable();
        firstStages_.setInt(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @param value The firstStages to add.
       * @return This builder for chaining.
       */
      public Builder addFirstStages(int value) {
        ensureFirstStagesIsMutable();
        firstStages_.addInt(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @param values The firstStages to add.
       * @return This builder for chaining.
       */
      public Builder addAllFirstStages(
          java.lang.Iterable<? extends java.lang.Integer> values) {
        ensureFirstStagesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, firstStages_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已领取首通奖励的阶段
       * </pre>
       *
       * <code>repeated int32 first_stages = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearFirstStages() {
        firstStages_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      private int currStage_ ;
      /**
       * <pre>
       *当前挑战阶段
       * </pre>
       *
       * <code>int32 curr_stage = 4;</code>
       * @return The currStage.
       */
      public int getCurrStage() {
        return currStage_;
      }
      /**
       * <pre>
       *当前挑战阶段
       * </pre>
       *
       * <code>int32 curr_stage = 4;</code>
       * @param value The currStage to set.
       * @return This builder for chaining.
       */
      public Builder setCurrStage(int value) {
        
        currStage_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *当前挑战阶段
       * </pre>
       *
       * <code>int32 curr_stage = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearCurrStage() {
        
        currStage_ = 0;
        onChanged();
        return this;
      }

      private com.google.protobuf.Internal.IntList teleports_ = emptyIntList();
      private void ensureTeleportsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          teleports_ = mutableCopy(teleports_);
          bitField0_ |= 0x00000002;
         }
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @return A list containing the teleports.
       */
      public java.util.List<java.lang.Integer>
          getTeleportsList() {
        return ((bitField0_ & 0x00000002) != 0) ?
                 java.util.Collections.unmodifiableList(teleports_) : teleports_;
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @return The count of teleports.
       */
      public int getTeleportsCount() {
        return teleports_.size();
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @param index The index of the element to return.
       * @return The teleports at the given index.
       */
      public int getTeleports(int index) {
        return teleports_.getInt(index);
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @param index The index to set the value at.
       * @param value The teleports to set.
       * @return This builder for chaining.
       */
      public Builder setTeleports(
          int index, int value) {
        ensureTeleportsIsMutable();
        teleports_.setInt(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @param value The teleports to add.
       * @return This builder for chaining.
       */
      public Builder addTeleports(int value) {
        ensureTeleportsIsMutable();
        teleports_.addInt(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @param values The teleports to add.
       * @return This builder for chaining.
       */
      public Builder addAllTeleports(
          java.lang.Iterable<? extends java.lang.Integer> values) {
        ensureTeleportsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, teleports_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的传送点
       * </pre>
       *
       * <code>repeated int32 teleports = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearTeleports() {
        teleports_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000002);
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingTeleports_ =
        java.util.Collections.emptyList();
      private void ensureOpeningTeleportsIsMutable() {
        if (!((bitField0_ & 0x00000004) != 0)) {
          openingTeleports_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>(openingTeleports_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingTeleportsBuilder_;

      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningTeleportsList() {
        if (openingTeleportsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(openingTeleports_);
        } else {
          return openingTeleportsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public int getOpeningTeleportsCount() {
        if (openingTeleportsBuilder_ == null) {
          return openingTeleports_.size();
        } else {
          return openingTeleportsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningTeleports(int index) {
        if (openingTeleportsBuilder_ == null) {
          return openingTeleports_.get(index);
        } else {
          return openingTeleportsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder setOpeningTeleports(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingTeleportsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.set(index, value);
          onChanged();
        } else {
          openingTeleportsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder setOpeningTeleports(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingTeleportsBuilder_ == null) {
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.set(index, builderForValue.build());
          onChanged();
        } else {
          openingTeleportsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder addOpeningTeleports(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingTeleportsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.add(value);
          onChanged();
        } else {
          openingTeleportsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder addOpeningTeleports(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingTeleportsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.add(index, value);
          onChanged();
        } else {
          openingTeleportsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder addOpeningTeleports(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingTeleportsBuilder_ == null) {
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.add(builderForValue.build());
          onChanged();
        } else {
          openingTeleportsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder addOpeningTeleports(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingTeleportsBuilder_ == null) {
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.add(index, builderForValue.build());
          onChanged();
        } else {
          openingTeleportsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder addAllOpeningTeleports(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> values) {
        if (openingTeleportsBuilder_ == null) {
          ensureOpeningTeleportsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, openingTeleports_);
          onChanged();
        } else {
          openingTeleportsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder clearOpeningTeleports() {
        if (openingTeleportsBuilder_ == null) {
          openingTeleports_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
          openingTeleportsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public Builder removeOpeningTeleports(int index) {
        if (openingTeleportsBuilder_ == null) {
          ensureOpeningTeleportsIsMutable();
          openingTeleports_.remove(index);
          onChanged();
        } else {
          openingTeleportsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningTeleportsBuilder(
          int index) {
        return getOpeningTeleportsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningTeleportsOrBuilder(
          int index) {
        if (openingTeleportsBuilder_ == null) {
          return openingTeleports_.get(index);  } else {
          return openingTeleportsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
           getOpeningTeleportsOrBuilderList() {
        if (openingTeleportsBuilder_ != null) {
          return openingTeleportsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(openingTeleports_);
        }
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningTeleportsBuilder() {
        return getOpeningTeleportsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningTeleportsBuilder(
          int index) {
        return getOpeningTeleportsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在开启的传送点
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_teleports = 6;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder> 
           getOpeningTeleportsBuilderList() {
        return getOpeningTeleportsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningTeleportsFieldBuilder() {
        if (openingTeleportsBuilder_ == null) {
          openingTeleportsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  openingTeleports_,
                  ((bitField0_ & 0x00000004) != 0),
                  getParentForChildren(),
                  isClean());
          openingTeleports_ = null;
        }
        return openingTeleportsBuilder_;
      }

      private com.google.protobuf.Internal.IntList fogs_ = emptyIntList();
      private void ensureFogsIsMutable() {
        if (!((bitField0_ & 0x00000008) != 0)) {
          fogs_ = mutableCopy(fogs_);
          bitField0_ |= 0x00000008;
         }
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @return A list containing the fogs.
       */
      public java.util.List<java.lang.Integer>
          getFogsList() {
        return ((bitField0_ & 0x00000008) != 0) ?
                 java.util.Collections.unmodifiableList(fogs_) : fogs_;
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @return The count of fogs.
       */
      public int getFogsCount() {
        return fogs_.size();
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @param index The index of the element to return.
       * @return The fogs at the given index.
       */
      public int getFogs(int index) {
        return fogs_.getInt(index);
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @param index The index to set the value at.
       * @param value The fogs to set.
       * @return This builder for chaining.
       */
      public Builder setFogs(
          int index, int value) {
        ensureFogsIsMutable();
        fogs_.setInt(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @param value The fogs to add.
       * @return This builder for chaining.
       */
      public Builder addFogs(int value) {
        ensureFogsIsMutable();
        fogs_.addInt(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @param values The fogs to add.
       * @return This builder for chaining.
       */
      public Builder addAllFogs(
          java.lang.Iterable<? extends java.lang.Integer> values) {
        ensureFogsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, fogs_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经开启的迷雾
       * </pre>
       *
       * <code>repeated int32 fogs = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearFogs() {
        fogs_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000008);
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingFogs_ =
        java.util.Collections.emptyList();
      private void ensureOpeningFogsIsMutable() {
        if (!((bitField0_ & 0x00000010) != 0)) {
          openingFogs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>(openingFogs_);
          bitField0_ |= 0x00000010;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingFogsBuilder_;

      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningFogsList() {
        if (openingFogsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(openingFogs_);
        } else {
          return openingFogsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public int getOpeningFogsCount() {
        if (openingFogsBuilder_ == null) {
          return openingFogs_.size();
        } else {
          return openingFogsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningFogs(int index) {
        if (openingFogsBuilder_ == null) {
          return openingFogs_.get(index);
        } else {
          return openingFogsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder setOpeningFogs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingFogsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningFogsIsMutable();
          openingFogs_.set(index, value);
          onChanged();
        } else {
          openingFogsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder setOpeningFogs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingFogsBuilder_ == null) {
          ensureOpeningFogsIsMutable();
          openingFogs_.set(index, builderForValue.build());
          onChanged();
        } else {
          openingFogsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder addOpeningFogs(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingFogsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningFogsIsMutable();
          openingFogs_.add(value);
          onChanged();
        } else {
          openingFogsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder addOpeningFogs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingFogsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningFogsIsMutable();
          openingFogs_.add(index, value);
          onChanged();
        } else {
          openingFogsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder addOpeningFogs(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingFogsBuilder_ == null) {
          ensureOpeningFogsIsMutable();
          openingFogs_.add(builderForValue.build());
          onChanged();
        } else {
          openingFogsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder addOpeningFogs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingFogsBuilder_ == null) {
          ensureOpeningFogsIsMutable();
          openingFogs_.add(index, builderForValue.build());
          onChanged();
        } else {
          openingFogsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder addAllOpeningFogs(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> values) {
        if (openingFogsBuilder_ == null) {
          ensureOpeningFogsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, openingFogs_);
          onChanged();
        } else {
          openingFogsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder clearOpeningFogs() {
        if (openingFogsBuilder_ == null) {
          openingFogs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
        } else {
          openingFogsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public Builder removeOpeningFogs(int index) {
        if (openingFogsBuilder_ == null) {
          ensureOpeningFogsIsMutable();
          openingFogs_.remove(index);
          onChanged();
        } else {
          openingFogsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningFogsBuilder(
          int index) {
        return getOpeningFogsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningFogsOrBuilder(
          int index) {
        if (openingFogsBuilder_ == null) {
          return openingFogs_.get(index);  } else {
          return openingFogsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
           getOpeningFogsOrBuilderList() {
        if (openingFogsBuilder_ != null) {
          return openingFogsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(openingFogs_);
        }
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningFogsBuilder() {
        return getOpeningFogsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningFogsBuilder(
          int index) {
        return getOpeningFogsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在开启的迷雾
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_fogs = 8;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder> 
           getOpeningFogsBuilderList() {
        return getOpeningFogsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningFogsFieldBuilder() {
        if (openingFogsBuilder_ == null) {
          openingFogsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  openingFogs_,
                  ((bitField0_ & 0x00000010) != 0),
                  getParentForChildren(),
                  isClean());
          openingFogs_ = null;
        }
        return openingFogsBuilder_;
      }

      private com.google.protobuf.Internal.IntList npcs_ = emptyIntList();
      private void ensureNpcsIsMutable() {
        if (!((bitField0_ & 0x00000020) != 0)) {
          npcs_ = mutableCopy(npcs_);
          bitField0_ |= 0x00000020;
         }
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @return A list containing the npcs.
       */
      public java.util.List<java.lang.Integer>
          getNpcsList() {
        return ((bitField0_ & 0x00000020) != 0) ?
                 java.util.Collections.unmodifiableList(npcs_) : npcs_;
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @return The count of npcs.
       */
      public int getNpcsCount() {
        return npcs_.size();
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @param index The index of the element to return.
       * @return The npcs at the given index.
       */
      public int getNpcs(int index) {
        return npcs_.getInt(index);
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @param index The index to set the value at.
       * @param value The npcs to set.
       * @return This builder for chaining.
       */
      public Builder setNpcs(
          int index, int value) {
        ensureNpcsIsMutable();
        npcs_.setInt(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @param value The npcs to add.
       * @return This builder for chaining.
       */
      public Builder addNpcs(int value) {
        ensureNpcsIsMutable();
        npcs_.addInt(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @param values The npcs to add.
       * @return This builder for chaining.
       */
      public Builder addAllNpcs(
          java.lang.Iterable<? extends java.lang.Integer> values) {
        ensureNpcsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, npcs_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已经完成缴纳的npc
       * </pre>
       *
       * <code>repeated int32 npcs = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearNpcs() {
        npcs_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000020);
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> openingNpcs_ =
        java.util.Collections.emptyList();
      private void ensureOpeningNpcsIsMutable() {
        if (!((bitField0_ & 0x00000040) != 0)) {
          openingNpcs_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening>(openingNpcs_);
          bitField0_ |= 0x00000040;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> openingNpcsBuilder_;

      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> getOpeningNpcsList() {
        if (openingNpcsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(openingNpcs_);
        } else {
          return openingNpcsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public int getOpeningNpcsCount() {
        if (openingNpcsBuilder_ == null) {
          return openingNpcs_.size();
        } else {
          return openingNpcsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening getOpeningNpcs(int index) {
        if (openingNpcsBuilder_ == null) {
          return openingNpcs_.get(index);
        } else {
          return openingNpcsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder setOpeningNpcs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingNpcsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningNpcsIsMutable();
          openingNpcs_.set(index, value);
          onChanged();
        } else {
          openingNpcsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder setOpeningNpcs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingNpcsBuilder_ == null) {
          ensureOpeningNpcsIsMutable();
          openingNpcs_.set(index, builderForValue.build());
          onChanged();
        } else {
          openingNpcsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder addOpeningNpcs(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingNpcsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningNpcsIsMutable();
          openingNpcs_.add(value);
          onChanged();
        } else {
          openingNpcsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder addOpeningNpcs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening value) {
        if (openingNpcsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOpeningNpcsIsMutable();
          openingNpcs_.add(index, value);
          onChanged();
        } else {
          openingNpcsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder addOpeningNpcs(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingNpcsBuilder_ == null) {
          ensureOpeningNpcsIsMutable();
          openingNpcs_.add(builderForValue.build());
          onChanged();
        } else {
          openingNpcsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder addOpeningNpcs(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder builderForValue) {
        if (openingNpcsBuilder_ == null) {
          ensureOpeningNpcsIsMutable();
          openingNpcs_.add(index, builderForValue.build());
          onChanged();
        } else {
          openingNpcsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder addAllOpeningNpcs(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening> values) {
        if (openingNpcsBuilder_ == null) {
          ensureOpeningNpcsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, openingNpcs_);
          onChanged();
        } else {
          openingNpcsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder clearOpeningNpcs() {
        if (openingNpcsBuilder_ == null) {
          openingNpcs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
        } else {
          openingNpcsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public Builder removeOpeningNpcs(int index) {
        if (openingNpcsBuilder_ == null) {
          ensureOpeningNpcsIsMutable();
          openingNpcs_.remove(index);
          onChanged();
        } else {
          openingNpcsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder getOpeningNpcsBuilder(
          int index) {
        return getOpeningNpcsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder getOpeningNpcsOrBuilder(
          int index) {
        if (openingNpcsBuilder_ == null) {
          return openingNpcs_.get(index);  } else {
          return openingNpcsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
           getOpeningNpcsOrBuilderList() {
        if (openingNpcsBuilder_ != null) {
          return openingNpcsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(openingNpcs_);
        }
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningNpcsBuilder() {
        return getOpeningNpcsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder addOpeningNpcsBuilder(
          int index) {
        return getOpeningNpcsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.getDefaultInstance());
      }
      /**
       * <pre>
       *正在缴纳的npc
       * </pre>
       *
       * <code>repeated .pb.PbSceneOpening opening_npcs = 10;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder> 
           getOpeningNpcsBuilderList() {
        return getOpeningNpcsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder> 
          getOpeningNpcsFieldBuilder() {
        if (openingNpcsBuilder_ == null) {
          openingNpcsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpening.Builder, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbSceneOpeningOrBuilder>(
                  openingNpcs_,
                  ((bitField0_ & 0x00000040) != 0),
                  getParentForChildren(),
                  isClean());
          openingNpcs_ = null;
        }
        return openingNpcsBuilder_;
      }

      private int portalX_ ;
      /**
       * <pre>
       *传送门坐标，为0表示没有传送门
       * </pre>
       *
       * <code>int32 portal_x = 11;</code>
       * @return The portalX.
       */
      public int getPortalX() {
        return portalX_;
      }
      /**
       * <pre>
       *传送门坐标，为0表示没有传送门
       * </pre>
       *
       * <code>int32 portal_x = 11;</code>
       * @param value The portalX to set.
       * @return This builder for chaining.
       */
      public Builder setPortalX(int value) {
        
        portalX_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *传送门坐标，为0表示没有传送门
       * </pre>
       *
       * <code>int32 portal_x = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalX() {
        
        portalX_ = 0;
        onChanged();
        return this;
      }

      private int portalY_ ;
      /**
       * <pre>
       *传送门
       * </pre>
       *
       * <code>int32 portal_y = 12;</code>
       * @return The portalY.
       */
      public int getPortalY() {
        return portalY_;
      }
      /**
       * <pre>
       *传送门
       * </pre>
       *
       * <code>int32 portal_y = 12;</code>
       * @param value The portalY to set.
       * @return This builder for chaining.
       */
      public Builder setPortalY(int value) {
        
        portalY_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *传送门
       * </pre>
       *
       * <code>int32 portal_y = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearPortalY() {
        
        portalY_ = 0;
        onChanged();
        return this;
      }

      private com.google.protobuf.Internal.IntList dungeons_ = emptyIntList();
      private void ensureDungeonsIsMutable() {
        if (!((bitField0_ & 0x00000080) != 0)) {
          dungeons_ = mutableCopy(dungeons_);
          bitField0_ |= 0x00000080;
         }
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @return A list containing the dungeons.
       */
      public java.util.List<java.lang.Integer>
          getDungeonsList() {
        return ((bitField0_ & 0x00000080) != 0) ?
                 java.util.Collections.unmodifiableList(dungeons_) : dungeons_;
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @return The count of dungeons.
       */
      public int getDungeonsCount() {
        return dungeons_.size();
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @param index The index of the element to return.
       * @return The dungeons at the given index.
       */
      public int getDungeons(int index) {
        return dungeons_.getInt(index);
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @param index The index to set the value at.
       * @param value The dungeons to set.
       * @return This builder for chaining.
       */
      public Builder setDungeons(
          int index, int value) {
        ensureDungeonsIsMutable();
        dungeons_.setInt(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @param value The dungeons to add.
       * @return This builder for chaining.
       */
      public Builder addDungeons(int value) {
        ensureDungeonsIsMutable();
        dungeons_.addInt(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @param values The dungeons to add.
       * @return This builder for chaining.
       */
      public Builder addAllDungeons(
          java.lang.Iterable<? extends java.lang.Integer> values) {
        ensureDungeonsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, dungeons_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已通关的地下城副本ID
       * </pre>
       *
       * <code>repeated int32 dungeons = 13;</code>
       * @return This builder for chaining.
       */
      public Builder clearDungeons() {
        dungeons_ = emptyIntList();
        bitField0_ = (bitField0_ & ~0x00000080);
        onChanged();
        return this;
      }

      private boolean openNext_ ;
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool open_next = 14;</code>
       * @return The openNext.
       */
      public boolean getOpenNext() {
        return openNext_;
      }
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool open_next = 14;</code>
       * @param value The openNext to set.
       * @return This builder for chaining.
       */
      public Builder setOpenNext(boolean value) {
        
        openNext_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *是否已经开启下一场景
       * </pre>
       *
       * <code>bool open_next = 14;</code>
       * @return This builder for chaining.
       */
      public Builder clearOpenNext() {
        
        openNext_ = 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.PbMainlineScene)
    }

    // @@protoc_insertion_point(class_scope:pb.PbMainlineScene)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineScene getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *消失时间
     * </pre>
     *
     * <code>int64 disappear_time = 1;</code>
     * @return The disappearTime.
     */
    long getDisappearTime();

    /**
     * <pre>
     *箱子类型
     * </pre>
     *
     * <code>int32 box_type = 2;</code>
     * @return The boxType.
     */
    int getBoxType();

    /**
     * <pre>
     *箱子参数，根据箱子类型来用	
     * </pre>
     *
     * <code>int32 box_arg = 3;</code>
     * @return The boxArg.
     */
    int getBoxArg();
  }
  /**
   * Protobuf type {@code pb.PbTreasureBox}
   */
  public  static final class PbTreasureBox extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbTreasureBox)
      PbTreasureBoxOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbTreasureBox.newBuilder() to construct.
    private PbTreasureBox(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbTreasureBox() {
    }

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

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

              disappearTime_ = input.readInt64();
              break;
            }
            case 16: {

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

              boxArg_ = 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.mainline.Mainline.internal_static_pb_PbTreasureBox_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbTreasureBox_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder.class);
    }

    public static final int DISAPPEAR_TIME_FIELD_NUMBER = 1;
    private long disappearTime_;
    /**
     * <pre>
     *消失时间
     * </pre>
     *
     * <code>int64 disappear_time = 1;</code>
     * @return The disappearTime.
     */
    public long getDisappearTime() {
      return disappearTime_;
    }

    public static final int BOX_TYPE_FIELD_NUMBER = 2;
    private int boxType_;
    /**
     * <pre>
     *箱子类型
     * </pre>
     *
     * <code>int32 box_type = 2;</code>
     * @return The boxType.
     */
    public int getBoxType() {
      return boxType_;
    }

    public static final int BOX_ARG_FIELD_NUMBER = 3;
    private int boxArg_;
    /**
     * <pre>
     *箱子参数，根据箱子类型来用	
     * </pre>
     *
     * <code>int32 box_arg = 3;</code>
     * @return The boxArg.
     */
    public int getBoxArg() {
      return boxArg_;
    }

    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 (disappearTime_ != 0L) {
        output.writeInt64(1, disappearTime_);
      }
      if (boxType_ != 0) {
        output.writeInt32(2, boxType_);
      }
      if (boxArg_ != 0) {
        output.writeInt32(3, boxArg_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (disappearTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, disappearTime_);
      }
      if (boxType_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, boxType_);
      }
      if (boxArg_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, boxArg_);
      }
      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.mainline.Mainline.PbTreasureBox)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox other = (pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox) obj;

      if (getDisappearTime()
          != other.getDisappearTime()) return false;
      if (getBoxType()
          != other.getBoxType()) return false;
      if (getBoxArg()
          != other.getBoxArg()) 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) + DISAPPEAR_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getDisappearTime());
      hash = (37 * hash) + BOX_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getBoxType();
      hash = (37 * hash) + BOX_ARG_FIELD_NUMBER;
      hash = (53 * hash) + getBoxArg();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox 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.mainline.Mainline.PbTreasureBox parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox 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.mainline.Mainline.PbTreasureBox parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox 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.mainline.Mainline.PbTreasureBox parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox 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.mainline.Mainline.PbTreasureBox parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox 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.mainline.Mainline.PbTreasureBox 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.PbTreasureBox}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbTreasureBox)
        pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBoxOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbTreasureBox_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbTreasureBox_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.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();
        disappearTime_ = 0L;

        boxType_ = 0;

        boxArg_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbTreasureBox_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox result = new pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox(this);
        result.disappearTime_ = disappearTime_;
        result.boxType_ = boxType_;
        result.boxArg_ = boxArg_;
        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.mainline.Mainline.PbTreasureBox) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox.getDefaultInstance()) return this;
        if (other.getDisappearTime() != 0L) {
          setDisappearTime(other.getDisappearTime());
        }
        if (other.getBoxType() != 0) {
          setBoxType(other.getBoxType());
        }
        if (other.getBoxArg() != 0) {
          setBoxArg(other.getBoxArg());
        }
        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.mainline.Mainline.PbTreasureBox parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long disappearTime_ ;
      /**
       * <pre>
       *消失时间
       * </pre>
       *
       * <code>int64 disappear_time = 1;</code>
       * @return The disappearTime.
       */
      public long getDisappearTime() {
        return disappearTime_;
      }
      /**
       * <pre>
       *消失时间
       * </pre>
       *
       * <code>int64 disappear_time = 1;</code>
       * @param value The disappearTime to set.
       * @return This builder for chaining.
       */
      public Builder setDisappearTime(long value) {
        
        disappearTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *消失时间
       * </pre>
       *
       * <code>int64 disappear_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearDisappearTime() {
        
        disappearTime_ = 0L;
        onChanged();
        return this;
      }

      private int boxType_ ;
      /**
       * <pre>
       *箱子类型
       * </pre>
       *
       * <code>int32 box_type = 2;</code>
       * @return The boxType.
       */
      public int getBoxType() {
        return boxType_;
      }
      /**
       * <pre>
       *箱子类型
       * </pre>
       *
       * <code>int32 box_type = 2;</code>
       * @param value The boxType to set.
       * @return This builder for chaining.
       */
      public Builder setBoxType(int value) {
        
        boxType_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *箱子类型
       * </pre>
       *
       * <code>int32 box_type = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearBoxType() {
        
        boxType_ = 0;
        onChanged();
        return this;
      }

      private int boxArg_ ;
      /**
       * <pre>
       *箱子参数，根据箱子类型来用	
       * </pre>
       *
       * <code>int32 box_arg = 3;</code>
       * @return The boxArg.
       */
      public int getBoxArg() {
        return boxArg_;
      }
      /**
       * <pre>
       *箱子参数，根据箱子类型来用	
       * </pre>
       *
       * <code>int32 box_arg = 3;</code>
       * @param value The boxArg to set.
       * @return This builder for chaining.
       */
      public Builder setBoxArg(int value) {
        
        boxArg_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *箱子参数，根据箱子类型来用	
       * </pre>
       *
       * <code>int32 box_arg = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearBoxArg() {
        
        boxArg_ = 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.PbTreasureBox)
    }

    // @@protoc_insertion_point(class_scope:pb.PbTreasureBox)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbTreasureBox getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <code>int32 stage = 1;</code>
     * @return The stage.
     */
    int getStage();
  }
  /**
   * Protobuf type {@code pb.PbMainlineBattleParam}
   */
  public  static final class PbMainlineBattleParam extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbMainlineBattleParam)
      PbMainlineBattleParamOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbMainlineBattleParam.newBuilder() to construct.
    private PbMainlineBattleParam(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbMainlineBattleParam() {
    }

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

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

              stage_ = 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.mainline.Mainline.internal_static_pb_PbMainlineBattleParam_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleParam_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.Builder.class);
    }

    public static final int STAGE_FIELD_NUMBER = 1;
    private int stage_;
    /**
     * <code>int32 stage = 1;</code>
     * @return The stage.
     */
    public int getStage() {
      return stage_;
    }

    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 (stage_ != 0) {
        output.writeInt32(1, stage_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (stage_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, stage_);
      }
      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.mainline.Mainline.PbMainlineBattleParam)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam other = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam) obj;

      if (getStage()
          != other.getStage()) 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) + STAGE_FIELD_NUMBER;
      hash = (53 * hash) + getStage();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam 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.mainline.Mainline.PbMainlineBattleParam parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam 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.mainline.Mainline.PbMainlineBattleParam parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam 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.mainline.Mainline.PbMainlineBattleParam parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam 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.mainline.Mainline.PbMainlineBattleParam parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam 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.mainline.Mainline.PbMainlineBattleParam 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.PbMainlineBattleParam}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbMainlineBattleParam)
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParamOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleParam_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleParam_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.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();
        stage_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleParam_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam result = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam(this);
        result.stage_ = stage_;
        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.mainline.Mainline.PbMainlineBattleParam) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam.getDefaultInstance()) return this;
        if (other.getStage() != 0) {
          setStage(other.getStage());
        }
        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.mainline.Mainline.PbMainlineBattleParam parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int stage_ ;
      /**
       * <code>int32 stage = 1;</code>
       * @return The stage.
       */
      public int getStage() {
        return stage_;
      }
      /**
       * <code>int32 stage = 1;</code>
       * @param value The stage to set.
       * @return This builder for chaining.
       */
      public Builder setStage(int value) {
        
        stage_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 stage = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearStage() {
        
        stage_ = 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.PbMainlineBattleParam)
    }

    // @@protoc_insertion_point(class_scope:pb.PbMainlineBattleParam)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleParam getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *已复活次数
     * </pre>
     *
     * <code>int32 revive_num = 1;</code>
     * @return The reviveNum.
     */
    int getReviveNum();
  }
  /**
   * Protobuf type {@code pb.PbMainlineBattleResult}
   */
  public  static final class PbMainlineBattleResult extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbMainlineBattleResult)
      PbMainlineBattleResultOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbMainlineBattleResult.newBuilder() to construct.
    private PbMainlineBattleResult(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbMainlineBattleResult() {
    }

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

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

              reviveNum_ = 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.mainline.Mainline.internal_static_pb_PbMainlineBattleResult_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleResult_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.Builder.class);
    }

    public static final int REVIVE_NUM_FIELD_NUMBER = 1;
    private int reviveNum_;
    /**
     * <pre>
     *已复活次数
     * </pre>
     *
     * <code>int32 revive_num = 1;</code>
     * @return The reviveNum.
     */
    public int getReviveNum() {
      return reviveNum_;
    }

    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 (reviveNum_ != 0) {
        output.writeInt32(1, reviveNum_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (reviveNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, reviveNum_);
      }
      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.mainline.Mainline.PbMainlineBattleResult)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult other = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult) obj;

      if (getReviveNum()
          != other.getReviveNum()) 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) + REVIVE_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getReviveNum();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult 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.mainline.Mainline.PbMainlineBattleResult parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult 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.mainline.Mainline.PbMainlineBattleResult parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult 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.mainline.Mainline.PbMainlineBattleResult parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult 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.mainline.Mainline.PbMainlineBattleResult parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult 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.mainline.Mainline.PbMainlineBattleResult 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.PbMainlineBattleResult}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbMainlineBattleResult)
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResultOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleResult_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleResult_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.class, pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.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();
        reviveNum_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.internal_static_pb_PbMainlineBattleResult_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult buildPartial() {
        pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult result = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult(this);
        result.reviveNum_ = reviveNum_;
        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.mainline.Mainline.PbMainlineBattleResult) {
          return mergeFrom((pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult other) {
        if (other == pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult.getDefaultInstance()) return this;
        if (other.getReviveNum() != 0) {
          setReviveNum(other.getReviveNum());
        }
        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.mainline.Mainline.PbMainlineBattleResult parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int reviveNum_ ;
      /**
       * <pre>
       *已复活次数
       * </pre>
       *
       * <code>int32 revive_num = 1;</code>
       * @return The reviveNum.
       */
      public int getReviveNum() {
        return reviveNum_;
      }
      /**
       * <pre>
       *已复活次数
       * </pre>
       *
       * <code>int32 revive_num = 1;</code>
       * @param value The reviveNum to set.
       * @return This builder for chaining.
       */
      public Builder setReviveNum(int value) {
        
        reviveNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已复活次数
       * </pre>
       *
       * <code>int32 revive_num = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearReviveNum() {
        
        reviveNum_ = 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.PbMainlineBattleResult)
    }

    // @@protoc_insertion_point(class_scope:pb.PbMainlineBattleResult)
    private static final pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult();
    }

    public static pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.mainline.Mainline.PbMainlineBattleResult getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineFogOpenRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineFogOpenRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineFogOpenResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineFogOpenResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTeleportOpenRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTeleportOpenRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTeleportOpenResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTeleportOpenResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineNpcOpenRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineNpcOpenRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineNpcOpenResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineNpcOpenResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineSetPortalRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineSetPortalRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineSetPortalResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineSetPortalResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineUsePortalRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineUsePortalRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineUsePortalResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineUsePortalResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineHarvestRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineHarvestRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineHarvestResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineHarvestResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTaskRewardRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTaskRewardRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTaskRewardResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTaskRewardResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineUseTeleportRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineUseTeleportRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineUseTeleportResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineUseTeleportResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineBoxInfoRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineBoxInfoRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineBoxInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineBoxInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTakeBoxRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTakeBoxRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTakeBoxResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTakeBoxResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineRefreshBoxRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineRefreshBoxRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineRefreshBoxResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineRefreshBoxResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineStartCampRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineStartCampRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineStartCampResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineStartCampResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineEndCampRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineEndCampRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineEndCampResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineEndCampResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineChallengeBossRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineChallengeBossRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineChallengeBossResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineChallengeBossResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineOpenCampAdvRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineOpenCampAdvRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineOpenCampAdvResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineOpenCampAdvResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineKillMonsterNumRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineKillMonsterNumRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineKillMonsterNumResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineKillMonsterNumResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTakeHangRewardRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTakeHangRewardRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTakeHangRewardResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTakeHangRewardResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTimeBoxFarawayRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineTimeBoxFarawayResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_MainlineOpenNextMessage_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_MainlineOpenNextMessage_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbMainlineScene_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbMainlineScene_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbTreasureBox_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbTreasureBox_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbMainlineBattleParam_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbMainlineBattleParam_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbMainlineBattleResult_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbMainlineBattleResult_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\016Mainline.proto\022\002pb\032\020MiniStruct.proto\"\270" +
      "\001\n\024MainlineInfoResponse\022#\n\006scenes\030\001 \003(\0132" +
      "\023.pb.PbMainlineScene\022\025\n\rnext_box_time\030\002 " +
      "\001(\003\022\024\n\014camp_adv_num\030\003 \001(\005\022\024\n\014hang_boss_i" +
      "d\030\004 \001(\005\022\030\n\004task\030\005 \001(\0132\n.pb.PbTask\"\036\n\005Pro" +
      "to\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\201\265\030\"H\n\026MainlineFog" +
      "OpenRequest\022\016\n\006fog_id\030\001 \001(\005\"\036\n\005Proto\022\013\n\007" +
      "UNKNOWN\020\000\022\010\n\002ID\020\204\265\030\"v\n\027MainlineFogOpenRe" +
      "sponse\022\022\n\nunlock_fog\030\001 \001(\005\022\'\n\013opening_fo" +
      "g\030\002 \001(\0132\022.pb.PbSceneOpening\"\036\n\005Proto\022\013\n\007" +
      "UNKNOWN\020\000\022\010\n\002ID\020\204\265\030\"R\n\033MainlineTeleportO" +
      "penRequest\022\023\n\013teleport_id\030\001 \001(\005\"\036\n\005Proto" +
      "\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\205\265\030\"\205\001\n\034MainlineTele" +
      "portOpenResponse\022\027\n\017unlock_teleport\030\001 \001(" +
      "\005\022,\n\020opening_teleport\030\002 \001(\0132\022.pb.PbScene" +
      "Opening\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\205\265\030\"" +
      "H\n\026MainlineNpcOpenRequest\022\016\n\006npc_id\030\001 \001(" +
      "\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\206\265\030\"\233\001\n\027Ma" +
      "inlineNpcOpenResponse\022\022\n\nunlock_npc\030\001 \001(" +
      "\005\022\'\n\013opening_npc\030\002 \001(\0132\022.pb.PbSceneOpeni" +
      "ng\022#\n\007receipt\030\003 \001(\0132\022.pb.PbThingReceipt\"" +
      "\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\206\265\030\"^\n\030Mainl" +
      "ineSetPortalRequest\022\020\n\010portal_x\030\001 \001(\005\022\020\n" +
      "\010portal_y\030\002 \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n" +
      "\002ID\020\207\265\030\"_\n\031MainlineSetPortalResponse\022\020\n\010" +
      "portal_x\030\001 \001(\005\022\020\n\010portal_y\030\002 \001(\005\"\036\n\005Prot" +
      "o\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\207\265\030\":\n\030MainlineUseP" +
      "ortalRequest\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID" +
      "\020\210\265\030\"_\n\031MainlineUsePortalResponse\022\020\n\010por" +
      "tal_x\030\001 \001(\005\022\020\n\010portal_y\030\002 \001(\005\"\036\n\005Proto\022\013" +
      "\n\007UNKNOWN\020\000\022\010\n\002ID\020\210\265\030\"]\n\026MainlineHarvest" +
      "Request\022\017\n\007zone_id\030\001 \001(\005\022\022\n\nharvest_id\030\002" +
      " \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\212\265\030\"s\n\027" +
      "MainlineHarvestResponse\022\017\n\007zone_id\030\001 \001(\005" +
      "\022\022\n\nharvest_id\030\002 \001(\005\022\023\n\013reborn_time\030\003 \001(" +
      "\003\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\212\265\030\";\n\031Mai" +
      "nlineTaskRewardRequest\"\036\n\005Proto\022\013\n\007UNKNO" +
      "WN\020\000\022\010\n\002ID\020\213\265\030\"V\n\032MainlineTaskRewardResp" +
      "onse\022\030\n\004task\030\001 \001(\0132\n.pb.PbTask\"\036\n\005Proto\022" +
      "\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\213\265\030\"Q\n\032MainlineUseTel" +
      "eportRequest\022\023\n\013teleport_id\030\001 \001(\005\"\036\n\005Pro" +
      "to\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\214\265\030\"=\n\033MainlineUse" +
      "TeleportResponse\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010" +
      "\n\002ID\020\214\265\030\"J\n\026MainlineBoxInfoRequest\022\020\n\010bo" +
      "x_type\030\001 \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID" +
      "\020\215\265\030\"x\n\027MainlineBoxInfoResponse\022\'\n\014treas" +
      "ure_box\030\001 \001(\0132\021.pb.PbTreasureBox\022\024\n\014left" +
      "_box_num\030\002 \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002" +
      "ID\020\215\265\030\"\\\n\026MainlineTakeBoxRequest\022\020\n\010box_" +
      "type\030\001 \001(\005\022\020\n\010watch_ad\030\002 \001(\010\"\036\n\005Proto\022\013\n" +
      "\007UNKNOWN\020\000\022\010\n\002ID\020\216\265\030\"9\n\027MainlineTakeBoxR" +
      "esponse\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\216\265\030\"" +
      ";\n\031MainlineRefreshBoxRequest\"\036\n\005Proto\022\013\n" +
      "\007UNKNOWN\020\000\022\010\n\002ID\020\217\265\030\"d\n\032MainlineRefreshB" +
      "oxResponse\022\025\n\rnext_box_time\030\001 \001(\003\022\017\n\007has" +
      "_box\030\002 \001(\010\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\217" +
      "\265\030\":\n\030MainlineStartCampRequest\"\036\n\005Proto\022" +
      "\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\220\265\030\"V\n\031MainlineStartC" +
      "ampResponse\022\031\n\021camp_adv_end_time\030\001 \001(\003\"\036" +
      "\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\220\265\030\"8\n\026Mainli" +
      "neEndCampRequest\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010" +
      "\n\002ID\020\221\265\030\"n\n\027MainlineEndCampResponse\022\033\n\006t" +
      "hings\030\001 \003(\0132\013.pb.PbThing\022\026\n\016curr_camp_ti" +
      "me\030\002 \001(\003\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\221\265\030" +
      "\"O\n\034MainlineChallengeBossRequest\022\017\n\007boss" +
      "_id\030\001 \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\222\265" +
      "\030\"?\n\035MainlineChallengeBossResponse\"\036\n\005Pr" +
      "oto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\222\265\030\"<\n\032MainlineOp" +
      "enCampAdvRequest\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010" +
      "\n\002ID\020\223\265\030\"n\n\033MainlineOpenCampAdvResponse\022" +
      "\031\n\021camp_adv_end_time\030\001 \001(\003\022\024\n\014camp_adv_n" +
      "um\030\002 \001(\005\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\223\265\030" +
      "\"?\n\035MainlineKillMonsterNumRequest\"\036\n\005Pro" +
      "to\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\224\265\030\"R\n\036MainlineKil" +
      "lMonsterNumResponse\022\020\n\010kill_num\030\001 \001(\005\"\036\n" +
      "\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\224\265\030\"?\n\035Mainlin" +
      "eTakeHangRewardRequest\"\036\n\005Proto\022\013\n\007UNKNO" +
      "WN\020\000\022\010\n\002ID\020\226\265\030\"x\n\036MainlineTakeHangReward" +
      "Response\022\021\n\thang_time\030\001 \001(\003\022#\n\007receipt\030\002" +
      " \001(\0132\022.pb.PbThingReceipt\"\036\n\005Proto\022\013\n\007UNK" +
      "NOWN\020\000\022\010\n\002ID\020\226\265\030\"?\n\035MainlineTimeBoxFaraw" +
      "ayRequest\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\227\265" +
      "\030\"W\n\036MainlineTimeBoxFarawayResponse\022\025\n\rn" +
      "ext_box_time\030\001 \001(\003\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000" +
      "\022\010\n\002ID\020\227\265\030\"\220\001\n\027MainlineOpenNextMessage\022\025" +
      "\n\rcurr_scene_id\030\001 \001(\005\022\026\n\016curr_open_next\030" +
      "\002 \001(\010\022&\n\tnew_scene\030\003 \001(\0132\023.pb.PbMainline" +
      "Scene\"\036\n\005Proto\022\013\n\007UNKNOWN\020\000\022\010\n\002ID\020\230\265\030\"\333\002" +
      "\n\017PbMainlineScene\022\020\n\010scene_id\030\001 \001(\005\022\021\n\tm" +
      "ax_stage\030\002 \001(\005\022\024\n\014first_stages\030\003 \003(\005\022\022\n\n" +
      "curr_stage\030\004 \001(\005\022\021\n\tteleports\030\005 \003(\005\022-\n\021o" +
      "pening_teleports\030\006 \003(\0132\022.pb.PbSceneOpeni" +
      "ng\022\014\n\004fogs\030\007 \003(\005\022(\n\014opening_fogs\030\010 \003(\0132\022" +
      ".pb.PbSceneOpening\022\014\n\004npcs\030\t \003(\005\022(\n\014open" +
      "ing_npcs\030\n \003(\0132\022.pb.PbSceneOpening\022\020\n\010po" +
      "rtal_x\030\013 \001(\005\022\020\n\010portal_y\030\014 \001(\005\022\020\n\010dungeo" +
      "ns\030\r \003(\005\022\021\n\topen_next\030\016 \001(\010\"J\n\rPbTreasur" +
      "eBox\022\026\n\016disappear_time\030\001 \001(\003\022\020\n\010box_type" +
      "\030\002 \001(\005\022\017\n\007box_arg\030\003 \001(\005\"&\n\025PbMainlineBat" +
      "tleParam\022\r\n\005stage\030\001 \001(\005\",\n\026PbMainlineBat" +
      "tleResult\022\022\n\nrevive_num\030\001 \001(\005B8\n\036pb.xiug" +
      "ou.x1.protobuf.mainline\252\002\025pb.xiugou.x1.p" +
      "rotobufb\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_MainlineInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_pb_MainlineInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineInfoResponse_descriptor,
        new java.lang.String[] { "Scenes", "NextBoxTime", "CampAdvNum", "HangBossId", "Task", });
    internal_static_pb_MainlineFogOpenRequest_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_pb_MainlineFogOpenRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineFogOpenRequest_descriptor,
        new java.lang.String[] { "FogId", });
    internal_static_pb_MainlineFogOpenResponse_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_pb_MainlineFogOpenResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineFogOpenResponse_descriptor,
        new java.lang.String[] { "UnlockFog", "OpeningFog", });
    internal_static_pb_MainlineTeleportOpenRequest_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_pb_MainlineTeleportOpenRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTeleportOpenRequest_descriptor,
        new java.lang.String[] { "TeleportId", });
    internal_static_pb_MainlineTeleportOpenResponse_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_pb_MainlineTeleportOpenResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTeleportOpenResponse_descriptor,
        new java.lang.String[] { "UnlockTeleport", "OpeningTeleport", });
    internal_static_pb_MainlineNpcOpenRequest_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_pb_MainlineNpcOpenRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineNpcOpenRequest_descriptor,
        new java.lang.String[] { "NpcId", });
    internal_static_pb_MainlineNpcOpenResponse_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_pb_MainlineNpcOpenResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineNpcOpenResponse_descriptor,
        new java.lang.String[] { "UnlockNpc", "OpeningNpc", "Receipt", });
    internal_static_pb_MainlineSetPortalRequest_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_pb_MainlineSetPortalRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineSetPortalRequest_descriptor,
        new java.lang.String[] { "PortalX", "PortalY", });
    internal_static_pb_MainlineSetPortalResponse_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_pb_MainlineSetPortalResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineSetPortalResponse_descriptor,
        new java.lang.String[] { "PortalX", "PortalY", });
    internal_static_pb_MainlineUsePortalRequest_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_pb_MainlineUsePortalRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineUsePortalRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineUsePortalResponse_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_pb_MainlineUsePortalResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineUsePortalResponse_descriptor,
        new java.lang.String[] { "PortalX", "PortalY", });
    internal_static_pb_MainlineHarvestRequest_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_pb_MainlineHarvestRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineHarvestRequest_descriptor,
        new java.lang.String[] { "ZoneId", "HarvestId", });
    internal_static_pb_MainlineHarvestResponse_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_pb_MainlineHarvestResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineHarvestResponse_descriptor,
        new java.lang.String[] { "ZoneId", "HarvestId", "RebornTime", });
    internal_static_pb_MainlineTaskRewardRequest_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_pb_MainlineTaskRewardRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTaskRewardRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineTaskRewardResponse_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_pb_MainlineTaskRewardResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTaskRewardResponse_descriptor,
        new java.lang.String[] { "Task", });
    internal_static_pb_MainlineUseTeleportRequest_descriptor =
      getDescriptor().getMessageTypes().get(15);
    internal_static_pb_MainlineUseTeleportRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineUseTeleportRequest_descriptor,
        new java.lang.String[] { "TeleportId", });
    internal_static_pb_MainlineUseTeleportResponse_descriptor =
      getDescriptor().getMessageTypes().get(16);
    internal_static_pb_MainlineUseTeleportResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineUseTeleportResponse_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineBoxInfoRequest_descriptor =
      getDescriptor().getMessageTypes().get(17);
    internal_static_pb_MainlineBoxInfoRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineBoxInfoRequest_descriptor,
        new java.lang.String[] { "BoxType", });
    internal_static_pb_MainlineBoxInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(18);
    internal_static_pb_MainlineBoxInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineBoxInfoResponse_descriptor,
        new java.lang.String[] { "TreasureBox", "LeftBoxNum", });
    internal_static_pb_MainlineTakeBoxRequest_descriptor =
      getDescriptor().getMessageTypes().get(19);
    internal_static_pb_MainlineTakeBoxRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTakeBoxRequest_descriptor,
        new java.lang.String[] { "BoxType", "WatchAd", });
    internal_static_pb_MainlineTakeBoxResponse_descriptor =
      getDescriptor().getMessageTypes().get(20);
    internal_static_pb_MainlineTakeBoxResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTakeBoxResponse_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineRefreshBoxRequest_descriptor =
      getDescriptor().getMessageTypes().get(21);
    internal_static_pb_MainlineRefreshBoxRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineRefreshBoxRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineRefreshBoxResponse_descriptor =
      getDescriptor().getMessageTypes().get(22);
    internal_static_pb_MainlineRefreshBoxResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineRefreshBoxResponse_descriptor,
        new java.lang.String[] { "NextBoxTime", "HasBox", });
    internal_static_pb_MainlineStartCampRequest_descriptor =
      getDescriptor().getMessageTypes().get(23);
    internal_static_pb_MainlineStartCampRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineStartCampRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineStartCampResponse_descriptor =
      getDescriptor().getMessageTypes().get(24);
    internal_static_pb_MainlineStartCampResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineStartCampResponse_descriptor,
        new java.lang.String[] { "CampAdvEndTime", });
    internal_static_pb_MainlineEndCampRequest_descriptor =
      getDescriptor().getMessageTypes().get(25);
    internal_static_pb_MainlineEndCampRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineEndCampRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineEndCampResponse_descriptor =
      getDescriptor().getMessageTypes().get(26);
    internal_static_pb_MainlineEndCampResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineEndCampResponse_descriptor,
        new java.lang.String[] { "Things", "CurrCampTime", });
    internal_static_pb_MainlineChallengeBossRequest_descriptor =
      getDescriptor().getMessageTypes().get(27);
    internal_static_pb_MainlineChallengeBossRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineChallengeBossRequest_descriptor,
        new java.lang.String[] { "BossId", });
    internal_static_pb_MainlineChallengeBossResponse_descriptor =
      getDescriptor().getMessageTypes().get(28);
    internal_static_pb_MainlineChallengeBossResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineChallengeBossResponse_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineOpenCampAdvRequest_descriptor =
      getDescriptor().getMessageTypes().get(29);
    internal_static_pb_MainlineOpenCampAdvRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineOpenCampAdvRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineOpenCampAdvResponse_descriptor =
      getDescriptor().getMessageTypes().get(30);
    internal_static_pb_MainlineOpenCampAdvResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineOpenCampAdvResponse_descriptor,
        new java.lang.String[] { "CampAdvEndTime", "CampAdvNum", });
    internal_static_pb_MainlineKillMonsterNumRequest_descriptor =
      getDescriptor().getMessageTypes().get(31);
    internal_static_pb_MainlineKillMonsterNumRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineKillMonsterNumRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineKillMonsterNumResponse_descriptor =
      getDescriptor().getMessageTypes().get(32);
    internal_static_pb_MainlineKillMonsterNumResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineKillMonsterNumResponse_descriptor,
        new java.lang.String[] { "KillNum", });
    internal_static_pb_MainlineTakeHangRewardRequest_descriptor =
      getDescriptor().getMessageTypes().get(33);
    internal_static_pb_MainlineTakeHangRewardRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTakeHangRewardRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineTakeHangRewardResponse_descriptor =
      getDescriptor().getMessageTypes().get(34);
    internal_static_pb_MainlineTakeHangRewardResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTakeHangRewardResponse_descriptor,
        new java.lang.String[] { "HangTime", "Receipt", });
    internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor =
      getDescriptor().getMessageTypes().get(35);
    internal_static_pb_MainlineTimeBoxFarawayRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTimeBoxFarawayRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor =
      getDescriptor().getMessageTypes().get(36);
    internal_static_pb_MainlineTimeBoxFarawayResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineTimeBoxFarawayResponse_descriptor,
        new java.lang.String[] { "NextBoxTime", });
    internal_static_pb_MainlineOpenNextMessage_descriptor =
      getDescriptor().getMessageTypes().get(37);
    internal_static_pb_MainlineOpenNextMessage_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_MainlineOpenNextMessage_descriptor,
        new java.lang.String[] { "CurrSceneId", "CurrOpenNext", "NewScene", });
    internal_static_pb_PbMainlineScene_descriptor =
      getDescriptor().getMessageTypes().get(38);
    internal_static_pb_PbMainlineScene_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbMainlineScene_descriptor,
        new java.lang.String[] { "SceneId", "MaxStage", "FirstStages", "CurrStage", "Teleports", "OpeningTeleports", "Fogs", "OpeningFogs", "Npcs", "OpeningNpcs", "PortalX", "PortalY", "Dungeons", "OpenNext", });
    internal_static_pb_PbTreasureBox_descriptor =
      getDescriptor().getMessageTypes().get(39);
    internal_static_pb_PbTreasureBox_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbTreasureBox_descriptor,
        new java.lang.String[] { "DisappearTime", "BoxType", "BoxArg", });
    internal_static_pb_PbMainlineBattleParam_descriptor =
      getDescriptor().getMessageTypes().get(40);
    internal_static_pb_PbMainlineBattleParam_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbMainlineBattleParam_descriptor,
        new java.lang.String[] { "Stage", });
    internal_static_pb_PbMainlineBattleResult_descriptor =
      getDescriptor().getMessageTypes().get(41);
    internal_static_pb_PbMainlineBattleResult_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbMainlineBattleResult_descriptor,
        new java.lang.String[] { "ReviveNum", });
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
