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

package pb.xiugou.x1.protobuf.arena;

public final class Arena {
  private Arena() {}
  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 ArenaTopInfoRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ArenaTopInfoRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *查询赛季前五用于主城显示
   * </pre>
   *
   * Protobuf type {@code pb.ArenaTopInfoRequest}
   */
  public  static final class ArenaTopInfoRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaTopInfoRequest)
      ArenaTopInfoRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaTopInfoRequest.newBuilder() to construct.
    private ArenaTopInfoRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaTopInfoRequest() {
    }

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.Builder.class);
    }

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

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


      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 3800001: 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.arena.Arena.ArenaTopInfoRequest.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.ArenaTopInfoRequest.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.arena.Arena.ArenaTopInfoRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest) 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.arena.Arena.ArenaTopInfoRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest 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.arena.Arena.ArenaTopInfoRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest 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.arena.Arena.ArenaTopInfoRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest 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.arena.Arena.ArenaTopInfoRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest 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.arena.Arena.ArenaTopInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest 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.arena.Arena.ArenaTopInfoRequest 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.ArenaTopInfoRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ArenaTopInfoRequest)
        pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.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.arena.Arena.internal_static_pb_ArenaTopInfoRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.getDefaultInstance();
      }

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

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

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest.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.arena.Arena.ArenaTopInfoRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest) 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.ArenaTopInfoRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaTopInfoRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> 
        getTopPlayersList();
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index);
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    int getTopPlayersCount();
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
        getTopPlayersOrBuilderList();
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.ArenaTopInfoResponse}
   */
  public  static final class ArenaTopInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaTopInfoResponse)
      ArenaTopInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaTopInfoResponse.newBuilder() to construct.
    private ArenaTopInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaTopInfoResponse() {
      topPlayers_ = java.util.Collections.emptyList();
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ArenaTopInfoResponse(
        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)) {
                topPlayers_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer>();
                mutable_bitField0_ |= 0x00000001;
              }
              topPlayers_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          topPlayers_ = java.util.Collections.unmodifiableList(topPlayers_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.Builder.class);
    }

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

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


      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 3800001: 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.arena.Arena.ArenaTopInfoResponse.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.ArenaTopInfoResponse.Proto)
    }

    public static final int TOP_PLAYERS_FIELD_NUMBER = 1;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> topPlayers_;
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> getTopPlayersList() {
      return topPlayers_;
    }
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
        getTopPlayersOrBuilderList() {
      return topPlayers_;
    }
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public int getTopPlayersCount() {
      return topPlayers_.size();
    }
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index) {
      return topPlayers_.get(index);
    }
    /**
     * <pre>
     *赛季前5
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
        int index) {
      return topPlayers_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      for (int i = 0; i < topPlayers_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, topPlayers_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getTopPlayersList()
          .equals(other.getTopPlayersList())) 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 (getTopPlayersCount() > 0) {
        hash = (37 * hash) + TOP_PLAYERS_FIELD_NUMBER;
        hash = (53 * hash) + getTopPlayersList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaTopInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse(this);
        int from_bitField0_ = bitField0_;
        if (topPlayersBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            topPlayers_ = java.util.Collections.unmodifiableList(topPlayers_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.topPlayers_ = topPlayers_;
        } else {
          result.topPlayers_ = topPlayersBuilder_.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.arena.Arena.ArenaTopInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse.getDefaultInstance()) return this;
        if (topPlayersBuilder_ == null) {
          if (!other.topPlayers_.isEmpty()) {
            if (topPlayers_.isEmpty()) {
              topPlayers_ = other.topPlayers_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureTopPlayersIsMutable();
              topPlayers_.addAll(other.topPlayers_);
            }
            onChanged();
          }
        } else {
          if (!other.topPlayers_.isEmpty()) {
            if (topPlayersBuilder_.isEmpty()) {
              topPlayersBuilder_.dispose();
              topPlayersBuilder_ = null;
              topPlayers_ = other.topPlayers_;
              bitField0_ = (bitField0_ & ~0x00000001);
              topPlayersBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTopPlayersFieldBuilder() : null;
            } else {
              topPlayersBuilder_.addAllMessages(other.topPlayers_);
            }
          }
        }
        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.arena.Arena.ArenaTopInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> topPlayers_ =
        java.util.Collections.emptyList();
      private void ensureTopPlayersIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          topPlayers_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer>(topPlayers_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> topPlayersBuilder_;

      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> getTopPlayersList() {
        if (topPlayersBuilder_ == null) {
          return java.util.Collections.unmodifiableList(topPlayers_);
        } else {
          return topPlayersBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public int getTopPlayersCount() {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.size();
        } else {
          return topPlayersBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index) {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.get(index);
        } else {
          return topPlayersBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder setTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.set(index, value);
          onChanged();
        } else {
          topPlayersBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder setTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.set(index, builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.add(value);
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.add(index, value);
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.add(builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.add(index, builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addAllTopPlayers(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> values) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topPlayers_);
          onChanged();
        } else {
          topPlayersBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder clearTopPlayers() {
        if (topPlayersBuilder_ == null) {
          topPlayers_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          topPlayersBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder removeTopPlayers(int index) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.remove(index);
          onChanged();
        } else {
          topPlayersBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder getTopPlayersBuilder(
          int index) {
        return getTopPlayersFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
          int index) {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.get(index);  } else {
          return topPlayersBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
           getTopPlayersOrBuilderList() {
        if (topPlayersBuilder_ != null) {
          return topPlayersBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(topPlayers_);
        }
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder addTopPlayersBuilder() {
        return getTopPlayersFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance());
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder addTopPlayersBuilder(
          int index) {
        return getTopPlayersFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance());
      }
      /**
       * <pre>
       *赛季前5
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder> 
           getTopPlayersBuilderList() {
        return getTopPlayersFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
          getTopPlayersFieldBuilder() {
        if (topPlayersBuilder_ == null) {
          topPlayersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder>(
                  topPlayers_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          topPlayers_ = null;
        }
        return topPlayersBuilder_;
      }
      @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.ArenaTopInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaTopInfoResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaTopInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ArenaResumeInfoRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ArenaResumeInfoRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *竞技场概要信息，用于在入口时显示
   * </pre>
   *
   * Protobuf type {@code pb.ArenaResumeInfoRequest}
   */
  public  static final class ArenaResumeInfoRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaResumeInfoRequest)
      ArenaResumeInfoRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaResumeInfoRequest.newBuilder() to construct.
    private ArenaResumeInfoRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaResumeInfoRequest() {
    }

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.Builder.class);
    }

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

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


      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 3800002: 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.arena.Arena.ArenaResumeInfoRequest.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.ArenaResumeInfoRequest.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.arena.Arena.ArenaResumeInfoRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest) 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.arena.Arena.ArenaResumeInfoRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest 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.arena.Arena.ArenaResumeInfoRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest 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.arena.Arena.ArenaResumeInfoRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest 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.arena.Arena.ArenaResumeInfoRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest 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.arena.Arena.ArenaResumeInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest 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.arena.Arena.ArenaResumeInfoRequest 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.ArenaResumeInfoRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ArenaResumeInfoRequest)
        pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.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.arena.Arena.internal_static_pb_ArenaResumeInfoRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.getDefaultInstance();
      }

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

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

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest.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.arena.Arena.ArenaResumeInfoRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest) 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.ArenaResumeInfoRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaResumeInfoRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *名次
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    int getRank();

    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    long getScore();

    /**
     * <pre>
     *结算时间戳，毫秒
     * </pre>
     *
     * <code>int64 settle_time = 3;</code>
     * @return The settleTime.
     */
    long getSettleTime();
  }
  /**
   * Protobuf type {@code pb.ArenaResumeInfoResponse}
   */
  public  static final class ArenaResumeInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaResumeInfoResponse)
      ArenaResumeInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaResumeInfoResponse.newBuilder() to construct.
    private ArenaResumeInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaResumeInfoResponse() {
    }

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

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

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

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

              settleTime_ = 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.arena.Arena.internal_static_pb_ArenaResumeInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.Builder.class);
    }

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

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


      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 3800002: 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.arena.Arena.ArenaResumeInfoResponse.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.ArenaResumeInfoResponse.Proto)
    }

    public static final int RANK_FIELD_NUMBER = 1;
    private int rank_;
    /**
     * <pre>
     *名次
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    public int getRank() {
      return rank_;
    }

    public static final int SCORE_FIELD_NUMBER = 2;
    private long score_;
    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    public long getScore() {
      return score_;
    }

    public static final int SETTLE_TIME_FIELD_NUMBER = 3;
    private long settleTime_;
    /**
     * <pre>
     *结算时间戳，毫秒
     * </pre>
     *
     * <code>int64 settle_time = 3;</code>
     * @return The settleTime.
     */
    public long getSettleTime() {
      return settleTime_;
    }

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

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

      size = 0;
      if (rank_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, rank_);
      }
      if (score_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, score_);
      }
      if (settleTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(3, settleTime_);
      }
      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.arena.Arena.ArenaResumeInfoResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse) obj;

      if (getRank()
          != other.getRank()) return false;
      if (getScore()
          != other.getScore()) return false;
      if (getSettleTime()
          != other.getSettleTime()) 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) + RANK_FIELD_NUMBER;
      hash = (53 * hash) + getRank();
      hash = (37 * hash) + SCORE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getScore());
      hash = (37 * hash) + SETTLE_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getSettleTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.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();
        rank_ = 0;

        score_ = 0L;

        settleTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaResumeInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse(this);
        result.rank_ = rank_;
        result.score_ = score_;
        result.settleTime_ = settleTime_;
        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.arena.Arena.ArenaResumeInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse.getDefaultInstance()) return this;
        if (other.getRank() != 0) {
          setRank(other.getRank());
        }
        if (other.getScore() != 0L) {
          setScore(other.getScore());
        }
        if (other.getSettleTime() != 0L) {
          setSettleTime(other.getSettleTime());
        }
        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.arena.Arena.ArenaResumeInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int rank_ ;
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return The rank.
       */
      public int getRank() {
        return rank_;
      }
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @param value The rank to set.
       * @return This builder for chaining.
       */
      public Builder setRank(int value) {
        
        rank_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearRank() {
        
        rank_ = 0;
        onChanged();
        return this;
      }

      private long score_ ;
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return The score.
       */
      public long getScore() {
        return score_;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @param value The score to set.
       * @return This builder for chaining.
       */
      public Builder setScore(long value) {
        
        score_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearScore() {
        
        score_ = 0L;
        onChanged();
        return this;
      }

      private long settleTime_ ;
      /**
       * <pre>
       *结算时间戳，毫秒
       * </pre>
       *
       * <code>int64 settle_time = 3;</code>
       * @return The settleTime.
       */
      public long getSettleTime() {
        return settleTime_;
      }
      /**
       * <pre>
       *结算时间戳，毫秒
       * </pre>
       *
       * <code>int64 settle_time = 3;</code>
       * @param value The settleTime to set.
       * @return This builder for chaining.
       */
      public Builder setSettleTime(long value) {
        
        settleTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *结算时间戳，毫秒
       * </pre>
       *
       * <code>int64 settle_time = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearSettleTime() {
        
        settleTime_ = 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.ArenaResumeInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaResumeInfoResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaResumeInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ArenaInfoRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:pb.ArenaInfoRequest)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   *竞技场主页面信息
   * </pre>
   *
   * Protobuf type {@code pb.ArenaInfoRequest}
   */
  public  static final class ArenaInfoRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaInfoRequest)
      ArenaInfoRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaInfoRequest.newBuilder() to construct.
    private ArenaInfoRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaInfoRequest() {
    }

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.Builder.class);
    }

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

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


      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 3800003: 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.arena.Arena.ArenaInfoRequest.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.ArenaInfoRequest.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.arena.Arena.ArenaInfoRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest) 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.arena.Arena.ArenaInfoRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest 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.arena.Arena.ArenaInfoRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest 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.arena.Arena.ArenaInfoRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest 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.arena.Arena.ArenaInfoRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest 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.arena.Arena.ArenaInfoRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest 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.arena.Arena.ArenaInfoRequest 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.ArenaInfoRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ArenaInfoRequest)
        pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.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.arena.Arena.internal_static_pb_ArenaInfoRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.getDefaultInstance();
      }

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

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

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest.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.arena.Arena.ArenaInfoRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest) 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.ArenaInfoRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaInfoRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> 
        getTopPlayersList();
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index);
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    int getTopPlayersCount();
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
        getTopPlayersOrBuilderList();
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
        int index);

    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     * @return Whether the myRank field is set.
     */
    boolean hasMyRank();
    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     * @return The myRank.
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getMyRank();
    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getMyRankOrBuilder();

    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> 
        getCompetitorsList();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index);
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    int getCompetitorsCount();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
        getCompetitorsOrBuilderList();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
        int index);

    /**
     * <pre>
     *已挑战次数
     * </pre>
     *
     * <code>int32 challenge_num = 4;</code>
     * @return The challengeNum.
     */
    int getChallengeNum();

    /**
     * <pre>
     *已购买挑战次数
     * </pre>
     *
     * <code>int32 buy_num = 5;</code>
     * @return The buyNum.
     */
    int getBuyNum();

    /**
     * <pre>
     *刷新挑战者的冷却时间戳，毫秒
     * </pre>
     *
     * <code>int64 refresh_time = 6;</code>
     * @return The refreshTime.
     */
    long getRefreshTime();
  }
  /**
   * Protobuf type {@code pb.ArenaInfoResponse}
   */
  public  static final class ArenaInfoResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaInfoResponse)
      ArenaInfoResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaInfoResponse.newBuilder() to construct.
    private ArenaInfoResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaInfoResponse() {
      topPlayers_ = java.util.Collections.emptyList();
      competitors_ = java.util.Collections.emptyList();
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ArenaInfoResponse(
        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)) {
                topPlayers_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer>();
                mutable_bitField0_ |= 0x00000001;
              }
              topPlayers_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.parser(), extensionRegistry));
              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder subBuilder = null;
              if (myRank_ != null) {
                subBuilder = myRank_.toBuilder();
              }
              myRank_ = input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(myRank_);
                myRank_ = subBuilder.buildPartial();
              }

              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                competitors_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker>();
                mutable_bitField0_ |= 0x00000002;
              }
              competitors_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.parser(), extensionRegistry));
              break;
            }
            case 32: {

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

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

              refreshTime_ = 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)) {
          topPlayers_ = java.util.Collections.unmodifiableList(topPlayers_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          competitors_ = java.util.Collections.unmodifiableList(competitors_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.Builder.class);
    }

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

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


      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 3800003: 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.arena.Arena.ArenaInfoResponse.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.ArenaInfoResponse.Proto)
    }

    public static final int TOP_PLAYERS_FIELD_NUMBER = 1;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> topPlayers_;
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> getTopPlayersList() {
      return topPlayers_;
    }
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
        getTopPlayersOrBuilderList() {
      return topPlayers_;
    }
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public int getTopPlayersCount() {
      return topPlayers_.size();
    }
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index) {
      return topPlayers_.get(index);
    }
    /**
     * <pre>
     *赛季前3
     * </pre>
     *
     * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
        int index) {
      return topPlayers_.get(index);
    }

    public static final int MY_RANK_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker myRank_;
    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     * @return Whether the myRank field is set.
     */
    public boolean hasMyRank() {
      return myRank_ != null;
    }
    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     * @return The myRank.
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getMyRank() {
      return myRank_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance() : myRank_;
    }
    /**
     * <pre>
     *我的排名
     * </pre>
     *
     * <code>.pb.PbArenaRanker my_rank = 2;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getMyRankOrBuilder() {
      return getMyRank();
    }

    public static final int COMPETITORS_FIELD_NUMBER = 3;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> competitors_;
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> getCompetitorsList() {
      return competitors_;
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
        getCompetitorsOrBuilderList() {
      return competitors_;
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    public int getCompetitorsCount() {
      return competitors_.size();
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index) {
      return competitors_.get(index);
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
        int index) {
      return competitors_.get(index);
    }

    public static final int CHALLENGE_NUM_FIELD_NUMBER = 4;
    private int challengeNum_;
    /**
     * <pre>
     *已挑战次数
     * </pre>
     *
     * <code>int32 challenge_num = 4;</code>
     * @return The challengeNum.
     */
    public int getChallengeNum() {
      return challengeNum_;
    }

    public static final int BUY_NUM_FIELD_NUMBER = 5;
    private int buyNum_;
    /**
     * <pre>
     *已购买挑战次数
     * </pre>
     *
     * <code>int32 buy_num = 5;</code>
     * @return The buyNum.
     */
    public int getBuyNum() {
      return buyNum_;
    }

    public static final int REFRESH_TIME_FIELD_NUMBER = 6;
    private long refreshTime_;
    /**
     * <pre>
     *刷新挑战者的冷却时间戳，毫秒
     * </pre>
     *
     * <code>int64 refresh_time = 6;</code>
     * @return The refreshTime.
     */
    public long getRefreshTime() {
      return refreshTime_;
    }

    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 < topPlayers_.size(); i++) {
        output.writeMessage(1, topPlayers_.get(i));
      }
      if (myRank_ != null) {
        output.writeMessage(2, getMyRank());
      }
      for (int i = 0; i < competitors_.size(); i++) {
        output.writeMessage(3, competitors_.get(i));
      }
      if (challengeNum_ != 0) {
        output.writeInt32(4, challengeNum_);
      }
      if (buyNum_ != 0) {
        output.writeInt32(5, buyNum_);
      }
      if (refreshTime_ != 0L) {
        output.writeInt64(6, refreshTime_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      for (int i = 0; i < topPlayers_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, topPlayers_.get(i));
      }
      if (myRank_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getMyRank());
      }
      for (int i = 0; i < competitors_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, competitors_.get(i));
      }
      if (challengeNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, challengeNum_);
      }
      if (buyNum_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(5, buyNum_);
      }
      if (refreshTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(6, refreshTime_);
      }
      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.arena.Arena.ArenaInfoResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse) obj;

      if (!getTopPlayersList()
          .equals(other.getTopPlayersList())) return false;
      if (hasMyRank() != other.hasMyRank()) return false;
      if (hasMyRank()) {
        if (!getMyRank()
            .equals(other.getMyRank())) return false;
      }
      if (!getCompetitorsList()
          .equals(other.getCompetitorsList())) return false;
      if (getChallengeNum()
          != other.getChallengeNum()) return false;
      if (getBuyNum()
          != other.getBuyNum()) return false;
      if (getRefreshTime()
          != other.getRefreshTime()) 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 (getTopPlayersCount() > 0) {
        hash = (37 * hash) + TOP_PLAYERS_FIELD_NUMBER;
        hash = (53 * hash) + getTopPlayersList().hashCode();
      }
      if (hasMyRank()) {
        hash = (37 * hash) + MY_RANK_FIELD_NUMBER;
        hash = (53 * hash) + getMyRank().hashCode();
      }
      if (getCompetitorsCount() > 0) {
        hash = (37 * hash) + COMPETITORS_FIELD_NUMBER;
        hash = (53 * hash) + getCompetitorsList().hashCode();
      }
      hash = (37 * hash) + CHALLENGE_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getChallengeNum();
      hash = (37 * hash) + BUY_NUM_FIELD_NUMBER;
      hash = (53 * hash) + getBuyNum();
      hash = (37 * hash) + REFRESH_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getRefreshTime());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getTopPlayersFieldBuilder();
          getCompetitorsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (topPlayersBuilder_ == null) {
          topPlayers_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          topPlayersBuilder_.clear();
        }
        if (myRankBuilder_ == null) {
          myRank_ = null;
        } else {
          myRank_ = null;
          myRankBuilder_ = null;
        }
        if (competitorsBuilder_ == null) {
          competitors_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          competitorsBuilder_.clear();
        }
        challengeNum_ = 0;

        buyNum_ = 0;

        refreshTime_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaInfoResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse(this);
        int from_bitField0_ = bitField0_;
        if (topPlayersBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            topPlayers_ = java.util.Collections.unmodifiableList(topPlayers_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.topPlayers_ = topPlayers_;
        } else {
          result.topPlayers_ = topPlayersBuilder_.build();
        }
        if (myRankBuilder_ == null) {
          result.myRank_ = myRank_;
        } else {
          result.myRank_ = myRankBuilder_.build();
        }
        if (competitorsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            competitors_ = java.util.Collections.unmodifiableList(competitors_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.competitors_ = competitors_;
        } else {
          result.competitors_ = competitorsBuilder_.build();
        }
        result.challengeNum_ = challengeNum_;
        result.buyNum_ = buyNum_;
        result.refreshTime_ = refreshTime_;
        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.arena.Arena.ArenaInfoResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse.getDefaultInstance()) return this;
        if (topPlayersBuilder_ == null) {
          if (!other.topPlayers_.isEmpty()) {
            if (topPlayers_.isEmpty()) {
              topPlayers_ = other.topPlayers_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureTopPlayersIsMutable();
              topPlayers_.addAll(other.topPlayers_);
            }
            onChanged();
          }
        } else {
          if (!other.topPlayers_.isEmpty()) {
            if (topPlayersBuilder_.isEmpty()) {
              topPlayersBuilder_.dispose();
              topPlayersBuilder_ = null;
              topPlayers_ = other.topPlayers_;
              bitField0_ = (bitField0_ & ~0x00000001);
              topPlayersBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTopPlayersFieldBuilder() : null;
            } else {
              topPlayersBuilder_.addAllMessages(other.topPlayers_);
            }
          }
        }
        if (other.hasMyRank()) {
          mergeMyRank(other.getMyRank());
        }
        if (competitorsBuilder_ == null) {
          if (!other.competitors_.isEmpty()) {
            if (competitors_.isEmpty()) {
              competitors_ = other.competitors_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureCompetitorsIsMutable();
              competitors_.addAll(other.competitors_);
            }
            onChanged();
          }
        } else {
          if (!other.competitors_.isEmpty()) {
            if (competitorsBuilder_.isEmpty()) {
              competitorsBuilder_.dispose();
              competitorsBuilder_ = null;
              competitors_ = other.competitors_;
              bitField0_ = (bitField0_ & ~0x00000002);
              competitorsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getCompetitorsFieldBuilder() : null;
            } else {
              competitorsBuilder_.addAllMessages(other.competitors_);
            }
          }
        }
        if (other.getChallengeNum() != 0) {
          setChallengeNum(other.getChallengeNum());
        }
        if (other.getBuyNum() != 0) {
          setBuyNum(other.getBuyNum());
        }
        if (other.getRefreshTime() != 0L) {
          setRefreshTime(other.getRefreshTime());
        }
        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.arena.Arena.ArenaInfoResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> topPlayers_ =
        java.util.Collections.emptyList();
      private void ensureTopPlayersIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          topPlayers_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer>(topPlayers_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> topPlayersBuilder_;

      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> getTopPlayersList() {
        if (topPlayersBuilder_ == null) {
          return java.util.Collections.unmodifiableList(topPlayers_);
        } else {
          return topPlayersBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public int getTopPlayersCount() {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.size();
        } else {
          return topPlayersBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getTopPlayers(int index) {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.get(index);
        } else {
          return topPlayersBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder setTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.set(index, value);
          onChanged();
        } else {
          topPlayersBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder setTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.set(index, builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.add(value);
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer value) {
        if (topPlayersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTopPlayersIsMutable();
          topPlayers_.add(index, value);
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.add(builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addTopPlayers(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder builderForValue) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.add(index, builderForValue.build());
          onChanged();
        } else {
          topPlayersBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder addAllTopPlayers(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer> values) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topPlayers_);
          onChanged();
        } else {
          topPlayersBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder clearTopPlayers() {
        if (topPlayersBuilder_ == null) {
          topPlayers_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          topPlayersBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public Builder removeTopPlayers(int index) {
        if (topPlayersBuilder_ == null) {
          ensureTopPlayersIsMutable();
          topPlayers_.remove(index);
          onChanged();
        } else {
          topPlayersBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder getTopPlayersBuilder(
          int index) {
        return getTopPlayersFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder getTopPlayersOrBuilder(
          int index) {
        if (topPlayersBuilder_ == null) {
          return topPlayers_.get(index);  } else {
          return topPlayersBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
           getTopPlayersOrBuilderList() {
        if (topPlayersBuilder_ != null) {
          return topPlayersBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(topPlayers_);
        }
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder addTopPlayersBuilder() {
        return getTopPlayersFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance());
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder addTopPlayersBuilder(
          int index) {
        return getTopPlayersFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance());
      }
      /**
       * <pre>
       *赛季前3
       * </pre>
       *
       * <code>repeated .pb.PbArenaTopPlayer top_players = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder> 
           getTopPlayersBuilderList() {
        return getTopPlayersFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder> 
          getTopPlayersFieldBuilder() {
        if (topPlayersBuilder_ == null) {
          topPlayersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayerOrBuilder>(
                  topPlayers_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          topPlayers_ = null;
        }
        return topPlayersBuilder_;
      }

      private pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker myRank_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> myRankBuilder_;
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       * @return Whether the myRank field is set.
       */
      public boolean hasMyRank() {
        return myRankBuilder_ != null || myRank_ != null;
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       * @return The myRank.
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getMyRank() {
        if (myRankBuilder_ == null) {
          return myRank_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance() : myRank_;
        } else {
          return myRankBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public Builder setMyRank(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (myRankBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          myRank_ = value;
          onChanged();
        } else {
          myRankBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public Builder setMyRank(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (myRankBuilder_ == null) {
          myRank_ = builderForValue.build();
          onChanged();
        } else {
          myRankBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public Builder mergeMyRank(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (myRankBuilder_ == null) {
          if (myRank_ != null) {
            myRank_ =
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.newBuilder(myRank_).mergeFrom(value).buildPartial();
          } else {
            myRank_ = value;
          }
          onChanged();
        } else {
          myRankBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public Builder clearMyRank() {
        if (myRankBuilder_ == null) {
          myRank_ = null;
          onChanged();
        } else {
          myRank_ = null;
          myRankBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder getMyRankBuilder() {
        
        onChanged();
        return getMyRankFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getMyRankOrBuilder() {
        if (myRankBuilder_ != null) {
          return myRankBuilder_.getMessageOrBuilder();
        } else {
          return myRank_ == null ?
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance() : myRank_;
        }
      }
      /**
       * <pre>
       *我的排名
       * </pre>
       *
       * <code>.pb.PbArenaRanker my_rank = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
          getMyRankFieldBuilder() {
        if (myRankBuilder_ == null) {
          myRankBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder>(
                  getMyRank(),
                  getParentForChildren(),
                  isClean());
          myRank_ = null;
        }
        return myRankBuilder_;
      }

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> competitors_ =
        java.util.Collections.emptyList();
      private void ensureCompetitorsIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          competitors_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker>(competitors_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> competitorsBuilder_;

      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> getCompetitorsList() {
        if (competitorsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(competitors_);
        } else {
          return competitorsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public int getCompetitorsCount() {
        if (competitorsBuilder_ == null) {
          return competitors_.size();
        } else {
          return competitorsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index) {
        if (competitorsBuilder_ == null) {
          return competitors_.get(index);
        } else {
          return competitorsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder setCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.set(index, value);
          onChanged();
        } else {
          competitorsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder setCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.set(index, builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder addCompetitors(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.add(value);
          onChanged();
        } else {
          competitorsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder addCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.add(index, value);
          onChanged();
        } else {
          competitorsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder addCompetitors(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.add(builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder addCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.add(index, builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder addAllCompetitors(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> values) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, competitors_);
          onChanged();
        } else {
          competitorsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder clearCompetitors() {
        if (competitorsBuilder_ == null) {
          competitors_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          competitorsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public Builder removeCompetitors(int index) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.remove(index);
          onChanged();
        } else {
          competitorsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder getCompetitorsBuilder(
          int index) {
        return getCompetitorsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
          int index) {
        if (competitorsBuilder_ == null) {
          return competitors_.get(index);  } else {
          return competitorsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
           getCompetitorsOrBuilderList() {
        if (competitorsBuilder_ != null) {
          return competitorsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(competitors_);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder addCompetitorsBuilder() {
        return getCompetitorsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance());
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder addCompetitorsBuilder(
          int index) {
        return getCompetitorsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance());
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder> 
           getCompetitorsBuilderList() {
        return getCompetitorsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
          getCompetitorsFieldBuilder() {
        if (competitorsBuilder_ == null) {
          competitorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder>(
                  competitors_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          competitors_ = null;
        }
        return competitorsBuilder_;
      }

      private int challengeNum_ ;
      /**
       * <pre>
       *已挑战次数
       * </pre>
       *
       * <code>int32 challenge_num = 4;</code>
       * @return The challengeNum.
       */
      public int getChallengeNum() {
        return challengeNum_;
      }
      /**
       * <pre>
       *已挑战次数
       * </pre>
       *
       * <code>int32 challenge_num = 4;</code>
       * @param value The challengeNum to set.
       * @return This builder for chaining.
       */
      public Builder setChallengeNum(int value) {
        
        challengeNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已挑战次数
       * </pre>
       *
       * <code>int32 challenge_num = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearChallengeNum() {
        
        challengeNum_ = 0;
        onChanged();
        return this;
      }

      private int buyNum_ ;
      /**
       * <pre>
       *已购买挑战次数
       * </pre>
       *
       * <code>int32 buy_num = 5;</code>
       * @return The buyNum.
       */
      public int getBuyNum() {
        return buyNum_;
      }
      /**
       * <pre>
       *已购买挑战次数
       * </pre>
       *
       * <code>int32 buy_num = 5;</code>
       * @param value The buyNum to set.
       * @return This builder for chaining.
       */
      public Builder setBuyNum(int value) {
        
        buyNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *已购买挑战次数
       * </pre>
       *
       * <code>int32 buy_num = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearBuyNum() {
        
        buyNum_ = 0;
        onChanged();
        return this;
      }

      private long refreshTime_ ;
      /**
       * <pre>
       *刷新挑战者的冷却时间戳，毫秒
       * </pre>
       *
       * <code>int64 refresh_time = 6;</code>
       * @return The refreshTime.
       */
      public long getRefreshTime() {
        return refreshTime_;
      }
      /**
       * <pre>
       *刷新挑战者的冷却时间戳，毫秒
       * </pre>
       *
       * <code>int64 refresh_time = 6;</code>
       * @param value The refreshTime to set.
       * @return This builder for chaining.
       */
      public Builder setRefreshTime(long value) {
        
        refreshTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *刷新挑战者的冷却时间戳，毫秒
       * </pre>
       *
       * <code>int64 refresh_time = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearRefreshTime() {
        
        refreshTime_ = 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.ArenaInfoResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaInfoResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaInfoResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *对方玩家的ID
     * </pre>
     *
     * <code>int64 player_id = 1;</code>
     * @return The playerId.
     */
    long getPlayerId();

    /**
     * <pre>
     *对方玩家的服务器ID
     * </pre>
     *
     * <code>int32 server_id = 2;</code>
     * @return The serverId.
     */
    int getServerId();

    /**
     * <pre>
     *我的队伍队长英雄标识
     * </pre>
     *
     * <code>int32 main_hero = 3;</code>
     * @return The mainHero.
     */
    int getMainHero();

    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> 
        getPosListList();
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos getPosList(int index);
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    int getPosListCount();
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder> 
        getPosListOrBuilderList();
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder getPosListOrBuilder(
        int index);
  }
  /**
   * <pre>
   *战斗请求流程顺序ArenaChallengeRequest（得到返回后展示双方阵容）-&gt;EnterBattleRequest（进入战斗）-&gt;ZoneInfoRequest（创建怪物）-&gt;EnterZoneRequest（进入区域）
   *挑战玩家
   * </pre>
   *
   * Protobuf type {@code pb.ArenaChallengeRequest}
   */
  public  static final class ArenaChallengeRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaChallengeRequest)
      ArenaChallengeRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaChallengeRequest.newBuilder() to construct.
    private ArenaChallengeRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaChallengeRequest() {
      posList_ = java.util.Collections.emptyList();
    }

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

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

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

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

              mainHero_ = input.readInt32();
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                posList_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos>();
                mutable_bitField0_ |= 0x00000001;
              }
              posList_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          posList_ = java.util.Collections.unmodifiableList(posList_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.Builder.class);
    }

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

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


      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 3800004: 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.arena.Arena.ArenaChallengeRequest.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.ArenaChallengeRequest.Proto)
    }

    public static final int PLAYER_ID_FIELD_NUMBER = 1;
    private long playerId_;
    /**
     * <pre>
     *对方玩家的ID
     * </pre>
     *
     * <code>int64 player_id = 1;</code>
     * @return The playerId.
     */
    public long getPlayerId() {
      return playerId_;
    }

    public static final int SERVER_ID_FIELD_NUMBER = 2;
    private int serverId_;
    /**
     * <pre>
     *对方玩家的服务器ID
     * </pre>
     *
     * <code>int32 server_id = 2;</code>
     * @return The serverId.
     */
    public int getServerId() {
      return serverId_;
    }

    public static final int MAIN_HERO_FIELD_NUMBER = 3;
    private int mainHero_;
    /**
     * <pre>
     *我的队伍队长英雄标识
     * </pre>
     *
     * <code>int32 main_hero = 3;</code>
     * @return The mainHero.
     */
    public int getMainHero() {
      return mainHero_;
    }

    public static final int POS_LIST_FIELD_NUMBER = 4;
    private java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> posList_;
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> getPosListList() {
      return posList_;
    }
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder> 
        getPosListOrBuilderList() {
      return posList_;
    }
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    public int getPosListCount() {
      return posList_.size();
    }
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos getPosList(int index) {
      return posList_.get(index);
    }
    /**
     * <pre>
     *我的队伍站位信息
     * </pre>
     *
     * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
     */
    public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder getPosListOrBuilder(
        int index) {
      return posList_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (playerId_ != 0L) {
        output.writeInt64(1, playerId_);
      }
      if (serverId_ != 0) {
        output.writeInt32(2, serverId_);
      }
      if (mainHero_ != 0) {
        output.writeInt32(3, mainHero_);
      }
      for (int i = 0; i < posList_.size(); i++) {
        output.writeMessage(4, posList_.get(i));
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (playerId_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, playerId_);
      }
      if (serverId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, serverId_);
      }
      if (mainHero_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, mainHero_);
      }
      for (int i = 0; i < posList_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, posList_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (getPlayerId()
          != other.getPlayerId()) return false;
      if (getServerId()
          != other.getServerId()) return false;
      if (getMainHero()
          != other.getMainHero()) return false;
      if (!getPosListList()
          .equals(other.getPosListList())) 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) + PLAYER_ID_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPlayerId());
      hash = (37 * hash) + SERVER_ID_FIELD_NUMBER;
      hash = (53 * hash) + getServerId();
      hash = (37 * hash) + MAIN_HERO_FIELD_NUMBER;
      hash = (53 * hash) + getMainHero();
      if (getPosListCount() > 0) {
        hash = (37 * hash) + POS_LIST_FIELD_NUMBER;
        hash = (53 * hash) + getPosListList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest 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.arena.Arena.ArenaChallengeRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest 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.arena.Arena.ArenaChallengeRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest 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.arena.Arena.ArenaChallengeRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest 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.arena.Arena.ArenaChallengeRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest 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.arena.Arena.ArenaChallengeRequest 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>
     *战斗请求流程顺序ArenaChallengeRequest（得到返回后展示双方阵容）-&gt;EnterBattleRequest（进入战斗）-&gt;ZoneInfoRequest（创建怪物）-&gt;EnterZoneRequest（进入区域）
     *挑战玩家
     * </pre>
     *
     * Protobuf type {@code pb.ArenaChallengeRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ArenaChallengeRequest)
        pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        serverId_ = 0;

        mainHero_ = 0;

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest(this);
        int from_bitField0_ = bitField0_;
        result.playerId_ = playerId_;
        result.serverId_ = serverId_;
        result.mainHero_ = mainHero_;
        if (posListBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            posList_ = java.util.Collections.unmodifiableList(posList_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.posList_ = posList_;
        } else {
          result.posList_ = posListBuilder_.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.arena.Arena.ArenaChallengeRequest) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest.getDefaultInstance()) return this;
        if (other.getPlayerId() != 0L) {
          setPlayerId(other.getPlayerId());
        }
        if (other.getServerId() != 0) {
          setServerId(other.getServerId());
        }
        if (other.getMainHero() != 0) {
          setMainHero(other.getMainHero());
        }
        if (posListBuilder_ == null) {
          if (!other.posList_.isEmpty()) {
            if (posList_.isEmpty()) {
              posList_ = other.posList_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensurePosListIsMutable();
              posList_.addAll(other.posList_);
            }
            onChanged();
          }
        } else {
          if (!other.posList_.isEmpty()) {
            if (posListBuilder_.isEmpty()) {
              posListBuilder_.dispose();
              posListBuilder_ = null;
              posList_ = other.posList_;
              bitField0_ = (bitField0_ & ~0x00000001);
              posListBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getPosListFieldBuilder() : null;
            } else {
              posListBuilder_.addAllMessages(other.posList_);
            }
          }
        }
        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.arena.Arena.ArenaChallengeRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private long playerId_ ;
      /**
       * <pre>
       *对方玩家的ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @return The playerId.
       */
      public long getPlayerId() {
        return playerId_;
      }
      /**
       * <pre>
       *对方玩家的ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @param value The playerId to set.
       * @return This builder for chaining.
       */
      public Builder setPlayerId(long value) {
        
        playerId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *对方玩家的ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPlayerId() {
        
        playerId_ = 0L;
        onChanged();
        return this;
      }

      private int serverId_ ;
      /**
       * <pre>
       *对方玩家的服务器ID
       * </pre>
       *
       * <code>int32 server_id = 2;</code>
       * @return The serverId.
       */
      public int getServerId() {
        return serverId_;
      }
      /**
       * <pre>
       *对方玩家的服务器ID
       * </pre>
       *
       * <code>int32 server_id = 2;</code>
       * @param value The serverId to set.
       * @return This builder for chaining.
       */
      public Builder setServerId(int value) {
        
        serverId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *对方玩家的服务器ID
       * </pre>
       *
       * <code>int32 server_id = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearServerId() {
        
        serverId_ = 0;
        onChanged();
        return this;
      }

      private int mainHero_ ;
      /**
       * <pre>
       *我的队伍队长英雄标识
       * </pre>
       *
       * <code>int32 main_hero = 3;</code>
       * @return The mainHero.
       */
      public int getMainHero() {
        return mainHero_;
      }
      /**
       * <pre>
       *我的队伍队长英雄标识
       * </pre>
       *
       * <code>int32 main_hero = 3;</code>
       * @param value The mainHero to set.
       * @return This builder for chaining.
       */
      public Builder setMainHero(int value) {
        
        mainHero_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *我的队伍队长英雄标识
       * </pre>
       *
       * <code>int32 main_hero = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearMainHero() {
        
        mainHero_ = 0;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> posList_ =
        java.util.Collections.emptyList();
      private void ensurePosListIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          posList_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos>(posList_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder> posListBuilder_;

      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> getPosListList() {
        if (posListBuilder_ == null) {
          return java.util.Collections.unmodifiableList(posList_);
        } else {
          return posListBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public int getPosListCount() {
        if (posListBuilder_ == null) {
          return posList_.size();
        } else {
          return posListBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos getPosList(int index) {
        if (posListBuilder_ == null) {
          return posList_.get(index);
        } else {
          return posListBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder setPosList(
          int index, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos value) {
        if (posListBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePosListIsMutable();
          posList_.set(index, value);
          onChanged();
        } else {
          posListBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder setPosList(
          int index, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder builderForValue) {
        if (posListBuilder_ == null) {
          ensurePosListIsMutable();
          posList_.set(index, builderForValue.build());
          onChanged();
        } else {
          posListBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder addPosList(pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos value) {
        if (posListBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePosListIsMutable();
          posList_.add(value);
          onChanged();
        } else {
          posListBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder addPosList(
          int index, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos value) {
        if (posListBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePosListIsMutable();
          posList_.add(index, value);
          onChanged();
        } else {
          posListBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder addPosList(
          pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder builderForValue) {
        if (posListBuilder_ == null) {
          ensurePosListIsMutable();
          posList_.add(builderForValue.build());
          onChanged();
        } else {
          posListBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder addPosList(
          int index, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder builderForValue) {
        if (posListBuilder_ == null) {
          ensurePosListIsMutable();
          posList_.add(index, builderForValue.build());
          onChanged();
        } else {
          posListBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder addAllPosList(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos> values) {
        if (posListBuilder_ == null) {
          ensurePosListIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, posList_);
          onChanged();
        } else {
          posListBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder clearPosList() {
        if (posListBuilder_ == null) {
          posList_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          posListBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public Builder removePosList(int index) {
        if (posListBuilder_ == null) {
          ensurePosListIsMutable();
          posList_.remove(index);
          onChanged();
        } else {
          posListBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder getPosListBuilder(
          int index) {
        return getPosListFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder getPosListOrBuilder(
          int index) {
        if (posListBuilder_ == null) {
          return posList_.get(index);  } else {
          return posListBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder> 
           getPosListOrBuilderList() {
        if (posListBuilder_ != null) {
          return posListBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(posList_);
        }
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder addPosListBuilder() {
        return getPosListFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.getDefaultInstance());
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder addPosListBuilder(
          int index) {
        return getPosListFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.getDefaultInstance());
      }
      /**
       * <pre>
       *我的队伍站位信息
       * </pre>
       *
       * <code>repeated .pb.PbFormationPos pos_list = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder> 
           getPosListBuilderList() {
        return getPosListFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder> 
          getPosListFieldBuilder() {
        if (posListBuilder_ == null) {
          posListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPos.Builder, pb.xiugou.x1.protobuf.formation.Formation.PbFormationPosOrBuilder>(
                  posList_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          posList_ = null;
        }
        return posListBuilder_;
      }
      @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.ArenaChallengeRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaChallengeRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     * @return Whether the attacker field is set.
     */
    boolean hasAttacker();
    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     * @return The attacker.
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getAttacker();
    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getAttackerOrBuilder();

    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     * @return Whether the defender field is set.
     */
    boolean hasDefender();
    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     * @return The defender.
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefender();
    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getDefenderOrBuilder();
  }
  /**
   * Protobuf type {@code pb.ArenaChallengeResponse}
   */
  public  static final class ArenaChallengeResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaChallengeResponse)
      ArenaChallengeResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaChallengeResponse.newBuilder() to construct.
    private ArenaChallengeResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaChallengeResponse() {
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ArenaChallengeResponse(
        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.arena.Arena.PbArenaFighter.Builder subBuilder = null;
              if (attacker_ != null) {
                subBuilder = attacker_.toBuilder();
              }
              attacker_ = input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(attacker_);
                attacker_ = subBuilder.buildPartial();
              }

              break;
            }
            case 18: {
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder subBuilder = null;
              if (defender_ != null) {
                subBuilder = defender_.toBuilder();
              }
              defender_ = input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(defender_);
                defender_ = 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.arena.Arena.internal_static_pb_ArenaChallengeResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.Builder.class);
    }

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

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


      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 3800004: 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.arena.Arena.ArenaChallengeResponse.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.ArenaChallengeResponse.Proto)
    }

    public static final int ATTACKER_FIELD_NUMBER = 1;
    private pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter attacker_;
    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     * @return Whether the attacker field is set.
     */
    public boolean hasAttacker() {
      return attacker_ != null;
    }
    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     * @return The attacker.
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getAttacker() {
      return attacker_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : attacker_;
    }
    /**
     * <pre>
     *进攻方
     * </pre>
     *
     * <code>.pb.PbArenaFighter attacker = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getAttackerOrBuilder() {
      return getAttacker();
    }

    public static final int DEFENDER_FIELD_NUMBER = 2;
    private pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter defender_;
    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     * @return Whether the defender field is set.
     */
    public boolean hasDefender() {
      return defender_ != null;
    }
    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     * @return The defender.
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefender() {
      return defender_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : defender_;
    }
    /**
     * <pre>
     *防守方
     * </pre>
     *
     * <code>.pb.PbArenaFighter defender = 2;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getDefenderOrBuilder() {
      return getDefender();
    }

    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 (attacker_ != null) {
        output.writeMessage(1, getAttacker());
      }
      if (defender_ != null) {
        output.writeMessage(2, getDefender());
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (attacker_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getAttacker());
      }
      if (defender_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getDefender());
      }
      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.arena.Arena.ArenaChallengeResponse)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse) obj;

      if (hasAttacker() != other.hasAttacker()) return false;
      if (hasAttacker()) {
        if (!getAttacker()
            .equals(other.getAttacker())) return false;
      }
      if (hasDefender() != other.hasDefender()) return false;
      if (hasDefender()) {
        if (!getDefender()
            .equals(other.getDefender())) 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 (hasAttacker()) {
        hash = (37 * hash) + ATTACKER_FIELD_NUMBER;
        hash = (53 * hash) + getAttacker().hashCode();
      }
      if (hasDefender()) {
        hash = (37 * hash) + DEFENDER_FIELD_NUMBER;
        hash = (53 * hash) + getDefender().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.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 (attackerBuilder_ == null) {
          attacker_ = null;
        } else {
          attacker_ = null;
          attackerBuilder_ = null;
        }
        if (defenderBuilder_ == null) {
          defender_ = null;
        } else {
          defender_ = null;
          defenderBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaChallengeResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse(this);
        if (attackerBuilder_ == null) {
          result.attacker_ = attacker_;
        } else {
          result.attacker_ = attackerBuilder_.build();
        }
        if (defenderBuilder_ == null) {
          result.defender_ = defender_;
        } else {
          result.defender_ = defenderBuilder_.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.arena.Arena.ArenaChallengeResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse.getDefaultInstance()) return this;
        if (other.hasAttacker()) {
          mergeAttacker(other.getAttacker());
        }
        if (other.hasDefender()) {
          mergeDefender(other.getDefender());
        }
        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.arena.Arena.ArenaChallengeResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter attacker_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder> attackerBuilder_;
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       * @return Whether the attacker field is set.
       */
      public boolean hasAttacker() {
        return attackerBuilder_ != null || attacker_ != null;
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       * @return The attacker.
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getAttacker() {
        if (attackerBuilder_ == null) {
          return attacker_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : attacker_;
        } else {
          return attackerBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public Builder setAttacker(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter value) {
        if (attackerBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          attacker_ = value;
          onChanged();
        } else {
          attackerBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public Builder setAttacker(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder builderForValue) {
        if (attackerBuilder_ == null) {
          attacker_ = builderForValue.build();
          onChanged();
        } else {
          attackerBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public Builder mergeAttacker(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter value) {
        if (attackerBuilder_ == null) {
          if (attacker_ != null) {
            attacker_ =
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.newBuilder(attacker_).mergeFrom(value).buildPartial();
          } else {
            attacker_ = value;
          }
          onChanged();
        } else {
          attackerBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public Builder clearAttacker() {
        if (attackerBuilder_ == null) {
          attacker_ = null;
          onChanged();
        } else {
          attacker_ = null;
          attackerBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder getAttackerBuilder() {
        
        onChanged();
        return getAttackerFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getAttackerOrBuilder() {
        if (attackerBuilder_ != null) {
          return attackerBuilder_.getMessageOrBuilder();
        } else {
          return attacker_ == null ?
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : attacker_;
        }
      }
      /**
       * <pre>
       *进攻方
       * </pre>
       *
       * <code>.pb.PbArenaFighter attacker = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder> 
          getAttackerFieldBuilder() {
        if (attackerBuilder_ == null) {
          attackerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder>(
                  getAttacker(),
                  getParentForChildren(),
                  isClean());
          attacker_ = null;
        }
        return attackerBuilder_;
      }

      private pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter defender_;
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder> defenderBuilder_;
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       * @return Whether the defender field is set.
       */
      public boolean hasDefender() {
        return defenderBuilder_ != null || defender_ != null;
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       * @return The defender.
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefender() {
        if (defenderBuilder_ == null) {
          return defender_ == null ? pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : defender_;
        } else {
          return defenderBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public Builder setDefender(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter value) {
        if (defenderBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          defender_ = value;
          onChanged();
        } else {
          defenderBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public Builder setDefender(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder builderForValue) {
        if (defenderBuilder_ == null) {
          defender_ = builderForValue.build();
          onChanged();
        } else {
          defenderBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public Builder mergeDefender(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter value) {
        if (defenderBuilder_ == null) {
          if (defender_ != null) {
            defender_ =
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.newBuilder(defender_).mergeFrom(value).buildPartial();
          } else {
            defender_ = value;
          }
          onChanged();
        } else {
          defenderBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public Builder clearDefender() {
        if (defenderBuilder_ == null) {
          defender_ = null;
          onChanged();
        } else {
          defender_ = null;
          defenderBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder getDefenderBuilder() {
        
        onChanged();
        return getDefenderFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder getDefenderOrBuilder() {
        if (defenderBuilder_ != null) {
          return defenderBuilder_.getMessageOrBuilder();
        } else {
          return defender_ == null ?
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance() : defender_;
        }
      }
      /**
       * <pre>
       *防守方
       * </pre>
       *
       * <code>.pb.PbArenaFighter defender = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder> 
          getDefenderFieldBuilder() {
        if (defenderBuilder_ == null) {
          defenderBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighterOrBuilder>(
                  getDefender(),
                  getParentForChildren(),
                  isClean());
          defender_ = null;
        }
        return defenderBuilder_;
      }
      @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.ArenaChallengeResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaChallengeResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaChallengeResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.Builder.class);
    }

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

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


      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 3800005: 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.arena.Arena.ArenaRefreshRequest.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.ArenaRefreshRequest.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.arena.Arena.ArenaRefreshRequest)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest other = (pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest) 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.arena.Arena.ArenaRefreshRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest 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.arena.Arena.ArenaRefreshRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest 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.arena.Arena.ArenaRefreshRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest 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.arena.Arena.ArenaRefreshRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest 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.arena.Arena.ArenaRefreshRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest 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.arena.Arena.ArenaRefreshRequest 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.ArenaRefreshRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.ArenaRefreshRequest)
        pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.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.arena.Arena.internal_static_pb_ArenaRefreshRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.getDefaultInstance();
      }

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

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

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest.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.arena.Arena.ArenaRefreshRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest) 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.ArenaRefreshRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaRefreshRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> 
        getCompetitorsList();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index);
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    int getCompetitorsCount();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
        getCompetitorsOrBuilderList();
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.ArenaRefreshResponse}
   */
  public  static final class ArenaRefreshResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaRefreshResponse)
      ArenaRefreshResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaRefreshResponse.newBuilder() to construct.
    private ArenaRefreshResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaRefreshResponse() {
      competitors_ = java.util.Collections.emptyList();
    }

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

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ArenaRefreshResponse(
        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)) {
                competitors_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker>();
                mutable_bitField0_ |= 0x00000001;
              }
              competitors_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          competitors_ = java.util.Collections.unmodifiableList(competitors_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.Builder.class);
    }

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

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


      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 3800005: 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.arena.Arena.ArenaRefreshResponse.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.ArenaRefreshResponse.Proto)
    }

    public static final int COMPETITORS_FIELD_NUMBER = 1;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> competitors_;
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> getCompetitorsList() {
      return competitors_;
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
        getCompetitorsOrBuilderList() {
      return competitors_;
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    public int getCompetitorsCount() {
      return competitors_.size();
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index) {
      return competitors_.get(index);
    }
    /**
     * <pre>
     *待挑战者列表
     * </pre>
     *
     * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
        int index) {
      return competitors_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      for (int i = 0; i < competitors_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, competitors_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getCompetitorsList()
          .equals(other.getCompetitorsList())) 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 (getCompetitorsCount() > 0) {
        hash = (37 * hash) + COMPETITORS_FIELD_NUMBER;
        hash = (53 * hash) + getCompetitorsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRefreshResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse(this);
        int from_bitField0_ = bitField0_;
        if (competitorsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            competitors_ = java.util.Collections.unmodifiableList(competitors_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.competitors_ = competitors_;
        } else {
          result.competitors_ = competitorsBuilder_.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.arena.Arena.ArenaRefreshResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse.getDefaultInstance()) return this;
        if (competitorsBuilder_ == null) {
          if (!other.competitors_.isEmpty()) {
            if (competitors_.isEmpty()) {
              competitors_ = other.competitors_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureCompetitorsIsMutable();
              competitors_.addAll(other.competitors_);
            }
            onChanged();
          }
        } else {
          if (!other.competitors_.isEmpty()) {
            if (competitorsBuilder_.isEmpty()) {
              competitorsBuilder_.dispose();
              competitorsBuilder_ = null;
              competitors_ = other.competitors_;
              bitField0_ = (bitField0_ & ~0x00000001);
              competitorsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getCompetitorsFieldBuilder() : null;
            } else {
              competitorsBuilder_.addAllMessages(other.competitors_);
            }
          }
        }
        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.arena.Arena.ArenaRefreshResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> competitors_ =
        java.util.Collections.emptyList();
      private void ensureCompetitorsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          competitors_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker>(competitors_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> competitorsBuilder_;

      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> getCompetitorsList() {
        if (competitorsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(competitors_);
        } else {
          return competitorsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public int getCompetitorsCount() {
        if (competitorsBuilder_ == null) {
          return competitors_.size();
        } else {
          return competitorsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getCompetitors(int index) {
        if (competitorsBuilder_ == null) {
          return competitors_.get(index);
        } else {
          return competitorsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder setCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.set(index, value);
          onChanged();
        } else {
          competitorsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder setCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.set(index, builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder addCompetitors(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.add(value);
          onChanged();
        } else {
          competitorsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder addCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker value) {
        if (competitorsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureCompetitorsIsMutable();
          competitors_.add(index, value);
          onChanged();
        } else {
          competitorsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder addCompetitors(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.add(builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder addCompetitors(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder builderForValue) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.add(index, builderForValue.build());
          onChanged();
        } else {
          competitorsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder addAllCompetitors(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker> values) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, competitors_);
          onChanged();
        } else {
          competitorsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder clearCompetitors() {
        if (competitorsBuilder_ == null) {
          competitors_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          competitorsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public Builder removeCompetitors(int index) {
        if (competitorsBuilder_ == null) {
          ensureCompetitorsIsMutable();
          competitors_.remove(index);
          onChanged();
        } else {
          competitorsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder getCompetitorsBuilder(
          int index) {
        return getCompetitorsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder getCompetitorsOrBuilder(
          int index) {
        if (competitorsBuilder_ == null) {
          return competitors_.get(index);  } else {
          return competitorsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
           getCompetitorsOrBuilderList() {
        if (competitorsBuilder_ != null) {
          return competitorsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(competitors_);
        }
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder addCompetitorsBuilder() {
        return getCompetitorsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance());
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder addCompetitorsBuilder(
          int index) {
        return getCompetitorsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance());
      }
      /**
       * <pre>
       *待挑战者列表
       * </pre>
       *
       * <code>repeated .pb.PbArenaRanker competitors = 1;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder> 
           getCompetitorsBuilderList() {
        return getCompetitorsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder> 
          getCompetitorsFieldBuilder() {
        if (competitorsBuilder_ == null) {
          competitorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRankerOrBuilder>(
                  competitors_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          competitors_ = null;
        }
        return competitorsBuilder_;
      }
      @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.ArenaRefreshResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaRefreshResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaRefreshResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *1进攻战报，2防守战报
     * </pre>
     *
     * <code>int32 type = 1;</code>
     * @return The type.
     */
    int getType();
  }
  /**
   * <pre>
   *挑战记录
   * </pre>
   *
   * Protobuf type {@code pb.ArenaRecordRequest}
   */
  public  static final class ArenaRecordRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaRecordRequest)
      ArenaRecordRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaRecordRequest.newBuilder() to construct.
    private ArenaRecordRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaRecordRequest() {
    }

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

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

              type_ = 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.arena.Arena.internal_static_pb_ArenaRecordRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.Builder.class);
    }

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

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


      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 3800006: 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.arena.Arena.ArenaRecordRequest.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.ArenaRecordRequest.Proto)
    }

    public static final int TYPE_FIELD_NUMBER = 1;
    private int type_;
    /**
     * <pre>
     *1进攻战报，2防守战报
     * </pre>
     *
     * <code>int32 type = 1;</code>
     * @return The type.
     */
    public int getType() {
      return type_;
    }

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

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

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

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

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

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.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();
        type_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordRequest_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest.getDefaultInstance();
      }

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

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

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

      private int type_ ;
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @return The type.
       */
      public int getType() {
        return type_;
      }
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @param value The type to set.
       * @return This builder for chaining.
       */
      public Builder setType(int value) {
        
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearType() {
        
        type_ = 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.ArenaRecordRequest)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaRecordRequest)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *1进攻战报，2防守战报
     * </pre>
     *
     * <code>int32 type = 1;</code>
     * @return The type.
     */
    int getType();

    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> 
        getRecordsList();
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getRecords(int index);
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    int getRecordsCount();
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder> 
        getRecordsOrBuilderList();
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder getRecordsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.ArenaRecordResponse}
   */
  public  static final class ArenaRecordResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.ArenaRecordResponse)
      ArenaRecordResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ArenaRecordResponse.newBuilder() to construct.
    private ArenaRecordResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ArenaRecordResponse() {
      records_ = java.util.Collections.emptyList();
    }

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

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.Builder.class);
    }

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

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


      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 3800006: 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.arena.Arena.ArenaRecordResponse.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.ArenaRecordResponse.Proto)
    }

    public static final int TYPE_FIELD_NUMBER = 1;
    private int type_;
    /**
     * <pre>
     *1进攻战报，2防守战报
     * </pre>
     *
     * <code>int32 type = 1;</code>
     * @return The type.
     */
    public int getType() {
      return type_;
    }

    public static final int RECORDS_FIELD_NUMBER = 2;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> records_;
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> getRecordsList() {
      return records_;
    }
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder> 
        getRecordsOrBuilderList() {
      return records_;
    }
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    public int getRecordsCount() {
      return records_.size();
    }
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getRecords(int index) {
      return records_.get(index);
    }
    /**
     * <pre>
     *战报记录
     * </pre>
     *
     * <code>repeated .pb.PbArenaRecord records = 2;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder getRecordsOrBuilder(
        int index) {
      return records_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

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

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

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

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_FIELD_NUMBER;
      hash = (53 * hash) + getType();
      if (getRecordsCount() > 0) {
        hash = (37 * hash) + RECORDS_FIELD_NUMBER;
        hash = (53 * hash) + getRecordsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.class, pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_ArenaRecordResponse_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse result = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse(this);
        int from_bitField0_ = bitField0_;
        result.type_ = type_;
        if (recordsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            records_ = java.util.Collections.unmodifiableList(records_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.records_ = records_;
        } else {
          result.records_ = recordsBuilder_.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.arena.Arena.ArenaRecordResponse) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse.getDefaultInstance()) return this;
        if (other.getType() != 0) {
          setType(other.getType());
        }
        if (recordsBuilder_ == null) {
          if (!other.records_.isEmpty()) {
            if (records_.isEmpty()) {
              records_ = other.records_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureRecordsIsMutable();
              records_.addAll(other.records_);
            }
            onChanged();
          }
        } else {
          if (!other.records_.isEmpty()) {
            if (recordsBuilder_.isEmpty()) {
              recordsBuilder_.dispose();
              recordsBuilder_ = null;
              records_ = other.records_;
              bitField0_ = (bitField0_ & ~0x00000001);
              recordsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getRecordsFieldBuilder() : null;
            } else {
              recordsBuilder_.addAllMessages(other.records_);
            }
          }
        }
        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.arena.Arena.ArenaRecordResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int type_ ;
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @return The type.
       */
      public int getType() {
        return type_;
      }
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @param value The type to set.
       * @return This builder for chaining.
       */
      public Builder setType(int value) {
        
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *1进攻战报，2防守战报
       * </pre>
       *
       * <code>int32 type = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearType() {
        
        type_ = 0;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> records_ =
        java.util.Collections.emptyList();
      private void ensureRecordsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          records_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord>(records_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder> recordsBuilder_;

      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> getRecordsList() {
        if (recordsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(records_);
        } else {
          return recordsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public int getRecordsCount() {
        if (recordsBuilder_ == null) {
          return records_.size();
        } else {
          return recordsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getRecords(int index) {
        if (recordsBuilder_ == null) {
          return records_.get(index);
        } else {
          return recordsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder setRecords(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord value) {
        if (recordsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRecordsIsMutable();
          records_.set(index, value);
          onChanged();
        } else {
          recordsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder setRecords(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder builderForValue) {
        if (recordsBuilder_ == null) {
          ensureRecordsIsMutable();
          records_.set(index, builderForValue.build());
          onChanged();
        } else {
          recordsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder addRecords(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord value) {
        if (recordsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRecordsIsMutable();
          records_.add(value);
          onChanged();
        } else {
          recordsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder addRecords(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord value) {
        if (recordsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRecordsIsMutable();
          records_.add(index, value);
          onChanged();
        } else {
          recordsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder addRecords(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder builderForValue) {
        if (recordsBuilder_ == null) {
          ensureRecordsIsMutable();
          records_.add(builderForValue.build());
          onChanged();
        } else {
          recordsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder addRecords(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder builderForValue) {
        if (recordsBuilder_ == null) {
          ensureRecordsIsMutable();
          records_.add(index, builderForValue.build());
          onChanged();
        } else {
          recordsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder addAllRecords(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord> values) {
        if (recordsBuilder_ == null) {
          ensureRecordsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, records_);
          onChanged();
        } else {
          recordsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder clearRecords() {
        if (recordsBuilder_ == null) {
          records_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          recordsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public Builder removeRecords(int index) {
        if (recordsBuilder_ == null) {
          ensureRecordsIsMutable();
          records_.remove(index);
          onChanged();
        } else {
          recordsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder getRecordsBuilder(
          int index) {
        return getRecordsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder getRecordsOrBuilder(
          int index) {
        if (recordsBuilder_ == null) {
          return records_.get(index);  } else {
          return recordsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder> 
           getRecordsOrBuilderList() {
        if (recordsBuilder_ != null) {
          return recordsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(records_);
        }
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder addRecordsBuilder() {
        return getRecordsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.getDefaultInstance());
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder addRecordsBuilder(
          int index) {
        return getRecordsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.getDefaultInstance());
      }
      /**
       * <pre>
       *战报记录
       * </pre>
       *
       * <code>repeated .pb.PbArenaRecord records = 2;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder> 
           getRecordsBuilderList() {
        return getRecordsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder> 
          getRecordsFieldBuilder() {
        if (recordsBuilder_ == null) {
          recordsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecordOrBuilder>(
                  records_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          records_ = null;
        }
        return recordsBuilder_;
      }
      @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.ArenaRecordResponse)
    }

    // @@protoc_insertion_point(class_scope:pb.ArenaRecordResponse)
    private static final pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.ArenaRecordResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 1;</code>
     * @return The nick.
     */
    java.lang.String getNick();
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 1;</code>
     * @return The bytes for nick.
     */
    com.google.protobuf.ByteString
        getNickBytes();

    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    long getScore();

    /**
     * <pre>
     *战力
     * </pre>
     *
     * <code>int64 fighting = 3;</code>
     * @return The fighting.
     */
    long getFighting();

    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> 
        getHeroPossList();
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getHeroPoss(int index);
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    int getHeroPossCount();
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder> 
        getHeroPossOrBuilderList();
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder getHeroPossOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.PbArenaFighter}
   */
  public  static final class PbArenaFighter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaFighter)
      PbArenaFighterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaFighter.newBuilder() to construct.
    private PbArenaFighter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaFighter() {
      nick_ = "";
      heroPoss_ = java.util.Collections.emptyList();
    }

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

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

              nick_ = s;
              break;
            }
            case 16: {

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

              fighting_ = input.readInt64();
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                heroPoss_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero>();
                mutable_bitField0_ |= 0x00000001;
              }
              heroPoss_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          heroPoss_ = java.util.Collections.unmodifiableList(heroPoss_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaFighter_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaFighter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder.class);
    }

    public static final int NICK_FIELD_NUMBER = 1;
    private volatile java.lang.Object nick_;
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 1;</code>
     * @return The nick.
     */
    public java.lang.String getNick() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nick_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 1;</code>
     * @return The bytes for nick.
     */
    public com.google.protobuf.ByteString
        getNickBytes() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nick_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SCORE_FIELD_NUMBER = 2;
    private long score_;
    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    public long getScore() {
      return score_;
    }

    public static final int FIGHTING_FIELD_NUMBER = 3;
    private long fighting_;
    /**
     * <pre>
     *战力
     * </pre>
     *
     * <code>int64 fighting = 3;</code>
     * @return The fighting.
     */
    public long getFighting() {
      return fighting_;
    }

    public static final int HEROPOSS_FIELD_NUMBER = 4;
    private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> heroPoss_;
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> getHeroPossList() {
      return heroPoss_;
    }
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder> 
        getHeroPossOrBuilderList() {
      return heroPoss_;
    }
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    public int getHeroPossCount() {
      return heroPoss_.size();
    }
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getHeroPoss(int index) {
      return heroPoss_.get(index);
    }
    /**
     * <pre>
     *出战英雄
     * </pre>
     *
     * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
     */
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder getHeroPossOrBuilder(
        int index) {
      return heroPoss_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getNickBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nick_);
      }
      if (score_ != 0L) {
        output.writeInt64(2, score_);
      }
      if (fighting_ != 0L) {
        output.writeInt64(3, fighting_);
      }
      for (int i = 0; i < heroPoss_.size(); i++) {
        output.writeMessage(4, heroPoss_.get(i));
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (!getNickBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nick_);
      }
      if (score_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, score_);
      }
      if (fighting_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(3, fighting_);
      }
      for (int i = 0; i < heroPoss_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, heroPoss_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getNick()
          .equals(other.getNick())) return false;
      if (getScore()
          != other.getScore()) return false;
      if (getFighting()
          != other.getFighting()) return false;
      if (!getHeroPossList()
          .equals(other.getHeroPossList())) 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) + NICK_FIELD_NUMBER;
      hash = (53 * hash) + getNick().hashCode();
      hash = (37 * hash) + SCORE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getScore());
      hash = (37 * hash) + FIGHTING_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getFighting());
      if (getHeroPossCount() > 0) {
        hash = (37 * hash) + HEROPOSS_FIELD_NUMBER;
        hash = (53 * hash) + getHeroPossList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaFighter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        score_ = 0L;

        fighting_ = 0L;

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaFighter_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter result = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter(this);
        int from_bitField0_ = bitField0_;
        result.nick_ = nick_;
        result.score_ = score_;
        result.fighting_ = fighting_;
        if (heroPossBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            heroPoss_ = java.util.Collections.unmodifiableList(heroPoss_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.heroPoss_ = heroPoss_;
        } else {
          result.heroPoss_ = heroPossBuilder_.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.arena.Arena.PbArenaFighter) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter.getDefaultInstance()) return this;
        if (!other.getNick().isEmpty()) {
          nick_ = other.nick_;
          onChanged();
        }
        if (other.getScore() != 0L) {
          setScore(other.getScore());
        }
        if (other.getFighting() != 0L) {
          setFighting(other.getFighting());
        }
        if (heroPossBuilder_ == null) {
          if (!other.heroPoss_.isEmpty()) {
            if (heroPoss_.isEmpty()) {
              heroPoss_ = other.heroPoss_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureHeroPossIsMutable();
              heroPoss_.addAll(other.heroPoss_);
            }
            onChanged();
          }
        } else {
          if (!other.heroPoss_.isEmpty()) {
            if (heroPossBuilder_.isEmpty()) {
              heroPossBuilder_.dispose();
              heroPossBuilder_ = null;
              heroPoss_ = other.heroPoss_;
              bitField0_ = (bitField0_ & ~0x00000001);
              heroPossBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getHeroPossFieldBuilder() : null;
            } else {
              heroPossBuilder_.addAllMessages(other.heroPoss_);
            }
          }
        }
        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.arena.Arena.PbArenaFighter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.lang.Object nick_ = "";
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 1;</code>
       * @return The nick.
       */
      public java.lang.String getNick() {
        java.lang.Object ref = nick_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nick_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 1;</code>
       * @return The bytes for nick.
       */
      public com.google.protobuf.ByteString
          getNickBytes() {
        java.lang.Object ref = nick_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nick_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 1;</code>
       * @param value The nick to set.
       * @return This builder for chaining.
       */
      public Builder setNick(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nick_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearNick() {
        
        nick_ = getDefaultInstance().getNick();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 1;</code>
       * @param value The bytes for nick to set.
       * @return This builder for chaining.
       */
      public Builder setNickBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nick_ = value;
        onChanged();
        return this;
      }

      private long score_ ;
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return The score.
       */
      public long getScore() {
        return score_;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @param value The score to set.
       * @return This builder for chaining.
       */
      public Builder setScore(long value) {
        
        score_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearScore() {
        
        score_ = 0L;
        onChanged();
        return this;
      }

      private long fighting_ ;
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 3;</code>
       * @return The fighting.
       */
      public long getFighting() {
        return fighting_;
      }
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 3;</code>
       * @param value The fighting to set.
       * @return This builder for chaining.
       */
      public Builder setFighting(long value) {
        
        fighting_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearFighting() {
        
        fighting_ = 0L;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> heroPoss_ =
        java.util.Collections.emptyList();
      private void ensureHeroPossIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          heroPoss_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero>(heroPoss_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder> heroPossBuilder_;

      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> getHeroPossList() {
        if (heroPossBuilder_ == null) {
          return java.util.Collections.unmodifiableList(heroPoss_);
        } else {
          return heroPossBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public int getHeroPossCount() {
        if (heroPossBuilder_ == null) {
          return heroPoss_.size();
        } else {
          return heroPossBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getHeroPoss(int index) {
        if (heroPossBuilder_ == null) {
          return heroPoss_.get(index);
        } else {
          return heroPossBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder setHeroPoss(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero value) {
        if (heroPossBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureHeroPossIsMutable();
          heroPoss_.set(index, value);
          onChanged();
        } else {
          heroPossBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder setHeroPoss(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder builderForValue) {
        if (heroPossBuilder_ == null) {
          ensureHeroPossIsMutable();
          heroPoss_.set(index, builderForValue.build());
          onChanged();
        } else {
          heroPossBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder addHeroPoss(pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero value) {
        if (heroPossBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureHeroPossIsMutable();
          heroPoss_.add(value);
          onChanged();
        } else {
          heroPossBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder addHeroPoss(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero value) {
        if (heroPossBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureHeroPossIsMutable();
          heroPoss_.add(index, value);
          onChanged();
        } else {
          heroPossBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder addHeroPoss(
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder builderForValue) {
        if (heroPossBuilder_ == null) {
          ensureHeroPossIsMutable();
          heroPoss_.add(builderForValue.build());
          onChanged();
        } else {
          heroPossBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder addHeroPoss(
          int index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder builderForValue) {
        if (heroPossBuilder_ == null) {
          ensureHeroPossIsMutable();
          heroPoss_.add(index, builderForValue.build());
          onChanged();
        } else {
          heroPossBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder addAllHeroPoss(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero> values) {
        if (heroPossBuilder_ == null) {
          ensureHeroPossIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, heroPoss_);
          onChanged();
        } else {
          heroPossBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder clearHeroPoss() {
        if (heroPossBuilder_ == null) {
          heroPoss_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          heroPossBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public Builder removeHeroPoss(int index) {
        if (heroPossBuilder_ == null) {
          ensureHeroPossIsMutable();
          heroPoss_.remove(index);
          onChanged();
        } else {
          heroPossBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder getHeroPossBuilder(
          int index) {
        return getHeroPossFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder getHeroPossOrBuilder(
          int index) {
        if (heroPossBuilder_ == null) {
          return heroPoss_.get(index);  } else {
          return heroPossBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder> 
           getHeroPossOrBuilderList() {
        if (heroPossBuilder_ != null) {
          return heroPossBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(heroPoss_);
        }
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder addHeroPossBuilder() {
        return getHeroPossFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.getDefaultInstance());
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder addHeroPossBuilder(
          int index) {
        return getHeroPossFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.getDefaultInstance());
      }
      /**
       * <pre>
       *出战英雄
       * </pre>
       *
       * <code>repeated .pb.PbArenaHero heroPoss = 4;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder> 
           getHeroPossBuilderList() {
        return getHeroPossFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder> 
          getHeroPossFieldBuilder() {
        if (heroPossBuilder_ == null) {
          heroPossBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHeroOrBuilder>(
                  heroPoss_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          heroPoss_ = null;
        }
        return heroPossBuilder_;
      }
      @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.PbArenaFighter)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaFighter)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaFighter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *英雄标识
     * </pre>
     *
     * <code>int32 identity = 1;</code>
     * @return The identity.
     */
    int getIdentity();

    /**
     * <pre>
     *站位
     * </pre>
     *
     * <code>int32 pos = 2;</code>
     * @return The pos.
     */
    int getPos();
  }
  /**
   * Protobuf type {@code pb.PbArenaHero}
   */
  public  static final class PbArenaHero extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaHero)
      PbArenaHeroOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaHero.newBuilder() to construct.
    private PbArenaHero(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaHero() {
    }

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

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

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

              pos_ = 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.arena.Arena.internal_static_pb_PbArenaHero_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaHero_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder.class);
    }

    public static final int IDENTITY_FIELD_NUMBER = 1;
    private int identity_;
    /**
     * <pre>
     *英雄标识
     * </pre>
     *
     * <code>int32 identity = 1;</code>
     * @return The identity.
     */
    public int getIdentity() {
      return identity_;
    }

    public static final int POS_FIELD_NUMBER = 2;
    private int pos_;
    /**
     * <pre>
     *站位
     * </pre>
     *
     * <code>int32 pos = 2;</code>
     * @return The pos.
     */
    public int getPos() {
      return pos_;
    }

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

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

      size = 0;
      if (identity_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, identity_);
      }
      if (pos_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, pos_);
      }
      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.arena.Arena.PbArenaHero)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero other = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero) obj;

      if (getIdentity()
          != other.getIdentity()) return false;
      if (getPos()
          != other.getPos()) 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) + IDENTITY_FIELD_NUMBER;
      hash = (53 * hash) + getIdentity();
      hash = (37 * hash) + POS_FIELD_NUMBER;
      hash = (53 * hash) + getPos();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaHero_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.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();
        identity_ = 0;

        pos_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaHero_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero.getDefaultInstance();
      }

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

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

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

      private int identity_ ;
      /**
       * <pre>
       *英雄标识
       * </pre>
       *
       * <code>int32 identity = 1;</code>
       * @return The identity.
       */
      public int getIdentity() {
        return identity_;
      }
      /**
       * <pre>
       *英雄标识
       * </pre>
       *
       * <code>int32 identity = 1;</code>
       * @param value The identity to set.
       * @return This builder for chaining.
       */
      public Builder setIdentity(int value) {
        
        identity_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *英雄标识
       * </pre>
       *
       * <code>int32 identity = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearIdentity() {
        
        identity_ = 0;
        onChanged();
        return this;
      }

      private int pos_ ;
      /**
       * <pre>
       *站位
       * </pre>
       *
       * <code>int32 pos = 2;</code>
       * @return The pos.
       */
      public int getPos() {
        return pos_;
      }
      /**
       * <pre>
       *站位
       * </pre>
       *
       * <code>int32 pos = 2;</code>
       * @param value The pos to set.
       * @return This builder for chaining.
       */
      public Builder setPos(int value) {
        
        pos_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *站位
       * </pre>
       *
       * <code>int32 pos = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPos() {
        
        pos_ = 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.PbArenaHero)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaHero)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaHero getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *名次，0未上榜
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    int getRank();

    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 2;</code>
     * @return The playerId.
     */
    long getPlayerId();

    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The nick.
     */
    java.lang.String getNick();
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The bytes for nick.
     */
    com.google.protobuf.ByteString
        getNickBytes();

    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 4;</code>
     * @return The score.
     */
    long getScore();

    /**
     * <pre>
     *战斗力
     * </pre>
     *
     * <code>int64 fighting = 5;</code>
     * @return The fighting.
     */
    long getFighting();

    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 6;</code>
     * @return The head.
     */
    java.lang.String getHead();
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 6;</code>
     * @return The bytes for head.
     */
    com.google.protobuf.ByteString
        getHeadBytes();

    /**
     * <pre>
     *玩家所在服务器ID
     * </pre>
     *
     * <code>int32 server_id = 7;</code>
     * @return The serverId.
     */
    int getServerId();

    /**
     * <pre>
     *形象
     * </pre>
     *
     * <code>int32 image = 8;</code>
     * @return The image.
     */
    int getImage();
  }
  /**
   * Protobuf type {@code pb.PbArenaRanker}
   */
  public  static final class PbArenaRanker extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaRanker)
      PbArenaRankerOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaRanker.newBuilder() to construct.
    private PbArenaRanker(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaRanker() {
      nick_ = "";
      head_ = "";
    }

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

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

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

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

              nick_ = s;
              break;
            }
            case 32: {

              score_ = input.readInt64();
              break;
            }
            case 40: {

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

              head_ = s;
              break;
            }
            case 56: {

              serverId_ = input.readInt32();
              break;
            }
            case 64: {

              image_ = 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.arena.Arena.internal_static_pb_PbArenaRanker_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRanker_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder.class);
    }

    public static final int RANK_FIELD_NUMBER = 1;
    private int rank_;
    /**
     * <pre>
     *名次，0未上榜
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    public int getRank() {
      return rank_;
    }

    public static final int PLAYER_ID_FIELD_NUMBER = 2;
    private long playerId_;
    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 2;</code>
     * @return The playerId.
     */
    public long getPlayerId() {
      return playerId_;
    }

    public static final int NICK_FIELD_NUMBER = 3;
    private volatile java.lang.Object nick_;
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The nick.
     */
    public java.lang.String getNick() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nick_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The bytes for nick.
     */
    public com.google.protobuf.ByteString
        getNickBytes() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nick_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SCORE_FIELD_NUMBER = 4;
    private long score_;
    /**
     * <pre>
     *积分
     * </pre>
     *
     * <code>int64 score = 4;</code>
     * @return The score.
     */
    public long getScore() {
      return score_;
    }

    public static final int FIGHTING_FIELD_NUMBER = 5;
    private long fighting_;
    /**
     * <pre>
     *战斗力
     * </pre>
     *
     * <code>int64 fighting = 5;</code>
     * @return The fighting.
     */
    public long getFighting() {
      return fighting_;
    }

    public static final int HEAD_FIELD_NUMBER = 6;
    private volatile java.lang.Object head_;
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 6;</code>
     * @return The head.
     */
    public java.lang.String getHead() {
      java.lang.Object ref = head_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        head_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 6;</code>
     * @return The bytes for head.
     */
    public com.google.protobuf.ByteString
        getHeadBytes() {
      java.lang.Object ref = head_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        head_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SERVER_ID_FIELD_NUMBER = 7;
    private int serverId_;
    /**
     * <pre>
     *玩家所在服务器ID
     * </pre>
     *
     * <code>int32 server_id = 7;</code>
     * @return The serverId.
     */
    public int getServerId() {
      return serverId_;
    }

    public static final int IMAGE_FIELD_NUMBER = 8;
    private int image_;
    /**
     * <pre>
     *形象
     * </pre>
     *
     * <code>int32 image = 8;</code>
     * @return The image.
     */
    public int getImage() {
      return image_;
    }

    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 (rank_ != 0) {
        output.writeInt32(1, rank_);
      }
      if (playerId_ != 0L) {
        output.writeInt64(2, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, nick_);
      }
      if (score_ != 0L) {
        output.writeInt64(4, score_);
      }
      if (fighting_ != 0L) {
        output.writeInt64(5, fighting_);
      }
      if (!getHeadBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, head_);
      }
      if (serverId_ != 0) {
        output.writeInt32(7, serverId_);
      }
      if (image_ != 0) {
        output.writeInt32(8, image_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (rank_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, rank_);
      }
      if (playerId_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, nick_);
      }
      if (score_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(4, score_);
      }
      if (fighting_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(5, fighting_);
      }
      if (!getHeadBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, head_);
      }
      if (serverId_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(7, serverId_);
      }
      if (image_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(8, image_);
      }
      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.arena.Arena.PbArenaRanker)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker other = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker) obj;

      if (getRank()
          != other.getRank()) return false;
      if (getPlayerId()
          != other.getPlayerId()) return false;
      if (!getNick()
          .equals(other.getNick())) return false;
      if (getScore()
          != other.getScore()) return false;
      if (getFighting()
          != other.getFighting()) return false;
      if (!getHead()
          .equals(other.getHead())) return false;
      if (getServerId()
          != other.getServerId()) return false;
      if (getImage()
          != other.getImage()) 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) + RANK_FIELD_NUMBER;
      hash = (53 * hash) + getRank();
      hash = (37 * hash) + PLAYER_ID_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPlayerId());
      hash = (37 * hash) + NICK_FIELD_NUMBER;
      hash = (53 * hash) + getNick().hashCode();
      hash = (37 * hash) + SCORE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getScore());
      hash = (37 * hash) + FIGHTING_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getFighting());
      hash = (37 * hash) + HEAD_FIELD_NUMBER;
      hash = (53 * hash) + getHead().hashCode();
      hash = (37 * hash) + SERVER_ID_FIELD_NUMBER;
      hash = (53 * hash) + getServerId();
      hash = (37 * hash) + IMAGE_FIELD_NUMBER;
      hash = (53 * hash) + getImage();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRanker_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.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();
        rank_ = 0;

        playerId_ = 0L;

        nick_ = "";

        score_ = 0L;

        fighting_ = 0L;

        head_ = "";

        serverId_ = 0;

        image_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRanker_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker result = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker(this);
        result.rank_ = rank_;
        result.playerId_ = playerId_;
        result.nick_ = nick_;
        result.score_ = score_;
        result.fighting_ = fighting_;
        result.head_ = head_;
        result.serverId_ = serverId_;
        result.image_ = image_;
        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.arena.Arena.PbArenaRanker) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker.getDefaultInstance()) return this;
        if (other.getRank() != 0) {
          setRank(other.getRank());
        }
        if (other.getPlayerId() != 0L) {
          setPlayerId(other.getPlayerId());
        }
        if (!other.getNick().isEmpty()) {
          nick_ = other.nick_;
          onChanged();
        }
        if (other.getScore() != 0L) {
          setScore(other.getScore());
        }
        if (other.getFighting() != 0L) {
          setFighting(other.getFighting());
        }
        if (!other.getHead().isEmpty()) {
          head_ = other.head_;
          onChanged();
        }
        if (other.getServerId() != 0) {
          setServerId(other.getServerId());
        }
        if (other.getImage() != 0) {
          setImage(other.getImage());
        }
        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.arena.Arena.PbArenaRanker parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int rank_ ;
      /**
       * <pre>
       *名次，0未上榜
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return The rank.
       */
      public int getRank() {
        return rank_;
      }
      /**
       * <pre>
       *名次，0未上榜
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @param value The rank to set.
       * @return This builder for chaining.
       */
      public Builder setRank(int value) {
        
        rank_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *名次，0未上榜
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearRank() {
        
        rank_ = 0;
        onChanged();
        return this;
      }

      private long playerId_ ;
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @return The playerId.
       */
      public long getPlayerId() {
        return playerId_;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @param value The playerId to set.
       * @return This builder for chaining.
       */
      public Builder setPlayerId(long value) {
        
        playerId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPlayerId() {
        
        playerId_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object nick_ = "";
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return The nick.
       */
      public java.lang.String getNick() {
        java.lang.Object ref = nick_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nick_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return The bytes for nick.
       */
      public com.google.protobuf.ByteString
          getNickBytes() {
        java.lang.Object ref = nick_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nick_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @param value The nick to set.
       * @return This builder for chaining.
       */
      public Builder setNick(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nick_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearNick() {
        
        nick_ = getDefaultInstance().getNick();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @param value The bytes for nick to set.
       * @return This builder for chaining.
       */
      public Builder setNickBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nick_ = value;
        onChanged();
        return this;
      }

      private long score_ ;
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 4;</code>
       * @return The score.
       */
      public long getScore() {
        return score_;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 4;</code>
       * @param value The score to set.
       * @return This builder for chaining.
       */
      public Builder setScore(long value) {
        
        score_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *积分
       * </pre>
       *
       * <code>int64 score = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearScore() {
        
        score_ = 0L;
        onChanged();
        return this;
      }

      private long fighting_ ;
      /**
       * <pre>
       *战斗力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @return The fighting.
       */
      public long getFighting() {
        return fighting_;
      }
      /**
       * <pre>
       *战斗力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @param value The fighting to set.
       * @return This builder for chaining.
       */
      public Builder setFighting(long value) {
        
        fighting_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *战斗力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearFighting() {
        
        fighting_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object head_ = "";
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 6;</code>
       * @return The head.
       */
      public java.lang.String getHead() {
        java.lang.Object ref = head_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          head_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 6;</code>
       * @return The bytes for head.
       */
      public com.google.protobuf.ByteString
          getHeadBytes() {
        java.lang.Object ref = head_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          head_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 6;</code>
       * @param value The head to set.
       * @return This builder for chaining.
       */
      public Builder setHead(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        head_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearHead() {
        
        head_ = getDefaultInstance().getHead();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 6;</code>
       * @param value The bytes for head to set.
       * @return This builder for chaining.
       */
      public Builder setHeadBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        head_ = value;
        onChanged();
        return this;
      }

      private int serverId_ ;
      /**
       * <pre>
       *玩家所在服务器ID
       * </pre>
       *
       * <code>int32 server_id = 7;</code>
       * @return The serverId.
       */
      public int getServerId() {
        return serverId_;
      }
      /**
       * <pre>
       *玩家所在服务器ID
       * </pre>
       *
       * <code>int32 server_id = 7;</code>
       * @param value The serverId to set.
       * @return This builder for chaining.
       */
      public Builder setServerId(int value) {
        
        serverId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *玩家所在服务器ID
       * </pre>
       *
       * <code>int32 server_id = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearServerId() {
        
        serverId_ = 0;
        onChanged();
        return this;
      }

      private int image_ ;
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 8;</code>
       * @return The image.
       */
      public int getImage() {
        return image_;
      }
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 8;</code>
       * @param value The image to set.
       * @return This builder for chaining.
       */
      public Builder setImage(int value) {
        
        image_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearImage() {
        
        image_ = 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.PbArenaRanker)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaRanker)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRanker getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *名次
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    int getRank();

    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 2;</code>
     * @return The playerId.
     */
    long getPlayerId();

    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The nick.
     */
    java.lang.String getNick();
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The bytes for nick.
     */
    com.google.protobuf.ByteString
        getNickBytes();

    /**
     * <pre>
     *形象
     * </pre>
     *
     * <code>int32 image = 4;</code>
     * @return The image.
     */
    int getImage();

    /**
     * <pre>
     *战力
     * </pre>
     *
     * <code>int64 fighting = 5;</code>
     * @return The fighting.
     */
    long getFighting();
  }
  /**
   * Protobuf type {@code pb.PbArenaTopPlayer}
   */
  public  static final class PbArenaTopPlayer extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaTopPlayer)
      PbArenaTopPlayerOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaTopPlayer.newBuilder() to construct.
    private PbArenaTopPlayer(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaTopPlayer() {
      nick_ = "";
    }

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

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

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

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

              nick_ = s;
              break;
            }
            case 32: {

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

              fighting_ = 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.arena.Arena.internal_static_pb_PbArenaTopPlayer_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaTopPlayer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder.class);
    }

    public static final int RANK_FIELD_NUMBER = 1;
    private int rank_;
    /**
     * <pre>
     *名次
     * </pre>
     *
     * <code>int32 rank = 1;</code>
     * @return The rank.
     */
    public int getRank() {
      return rank_;
    }

    public static final int PLAYER_ID_FIELD_NUMBER = 2;
    private long playerId_;
    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 2;</code>
     * @return The playerId.
     */
    public long getPlayerId() {
      return playerId_;
    }

    public static final int NICK_FIELD_NUMBER = 3;
    private volatile java.lang.Object nick_;
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The nick.
     */
    public java.lang.String getNick() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nick_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 3;</code>
     * @return The bytes for nick.
     */
    public com.google.protobuf.ByteString
        getNickBytes() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nick_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int IMAGE_FIELD_NUMBER = 4;
    private int image_;
    /**
     * <pre>
     *形象
     * </pre>
     *
     * <code>int32 image = 4;</code>
     * @return The image.
     */
    public int getImage() {
      return image_;
    }

    public static final int FIGHTING_FIELD_NUMBER = 5;
    private long fighting_;
    /**
     * <pre>
     *战力
     * </pre>
     *
     * <code>int64 fighting = 5;</code>
     * @return The fighting.
     */
    public long getFighting() {
      return fighting_;
    }

    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 (rank_ != 0) {
        output.writeInt32(1, rank_);
      }
      if (playerId_ != 0L) {
        output.writeInt64(2, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, nick_);
      }
      if (image_ != 0) {
        output.writeInt32(4, image_);
      }
      if (fighting_ != 0L) {
        output.writeInt64(5, fighting_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (rank_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, rank_);
      }
      if (playerId_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, nick_);
      }
      if (image_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(4, image_);
      }
      if (fighting_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(5, fighting_);
      }
      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.arena.Arena.PbArenaTopPlayer)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer other = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer) obj;

      if (getRank()
          != other.getRank()) return false;
      if (getPlayerId()
          != other.getPlayerId()) return false;
      if (!getNick()
          .equals(other.getNick())) return false;
      if (getImage()
          != other.getImage()) return false;
      if (getFighting()
          != other.getFighting()) 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) + RANK_FIELD_NUMBER;
      hash = (53 * hash) + getRank();
      hash = (37 * hash) + PLAYER_ID_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPlayerId());
      hash = (37 * hash) + NICK_FIELD_NUMBER;
      hash = (53 * hash) + getNick().hashCode();
      hash = (37 * hash) + IMAGE_FIELD_NUMBER;
      hash = (53 * hash) + getImage();
      hash = (37 * hash) + FIGHTING_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getFighting());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaTopPlayer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.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();
        rank_ = 0;

        playerId_ = 0L;

        nick_ = "";

        image_ = 0;

        fighting_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaTopPlayer_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer result = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer(this);
        result.rank_ = rank_;
        result.playerId_ = playerId_;
        result.nick_ = nick_;
        result.image_ = image_;
        result.fighting_ = fighting_;
        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.arena.Arena.PbArenaTopPlayer) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer.getDefaultInstance()) return this;
        if (other.getRank() != 0) {
          setRank(other.getRank());
        }
        if (other.getPlayerId() != 0L) {
          setPlayerId(other.getPlayerId());
        }
        if (!other.getNick().isEmpty()) {
          nick_ = other.nick_;
          onChanged();
        }
        if (other.getImage() != 0) {
          setImage(other.getImage());
        }
        if (other.getFighting() != 0L) {
          setFighting(other.getFighting());
        }
        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.arena.Arena.PbArenaTopPlayer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private int rank_ ;
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return The rank.
       */
      public int getRank() {
        return rank_;
      }
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @param value The rank to set.
       * @return This builder for chaining.
       */
      public Builder setRank(int value) {
        
        rank_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *名次
       * </pre>
       *
       * <code>int32 rank = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearRank() {
        
        rank_ = 0;
        onChanged();
        return this;
      }

      private long playerId_ ;
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @return The playerId.
       */
      public long getPlayerId() {
        return playerId_;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @param value The playerId to set.
       * @return This builder for chaining.
       */
      public Builder setPlayerId(long value) {
        
        playerId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearPlayerId() {
        
        playerId_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object nick_ = "";
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return The nick.
       */
      public java.lang.String getNick() {
        java.lang.Object ref = nick_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nick_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return The bytes for nick.
       */
      public com.google.protobuf.ByteString
          getNickBytes() {
        java.lang.Object ref = nick_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nick_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @param value The nick to set.
       * @return This builder for chaining.
       */
      public Builder setNick(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nick_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearNick() {
        
        nick_ = getDefaultInstance().getNick();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 3;</code>
       * @param value The bytes for nick to set.
       * @return This builder for chaining.
       */
      public Builder setNickBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nick_ = value;
        onChanged();
        return this;
      }

      private int image_ ;
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 4;</code>
       * @return The image.
       */
      public int getImage() {
        return image_;
      }
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 4;</code>
       * @param value The image to set.
       * @return This builder for chaining.
       */
      public Builder setImage(int value) {
        
        image_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *形象
       * </pre>
       *
       * <code>int32 image = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearImage() {
        
        image_ = 0;
        onChanged();
        return this;
      }

      private long fighting_ ;
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @return The fighting.
       */
      public long getFighting() {
        return fighting_;
      }
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @param value The fighting to set.
       * @return This builder for chaining.
       */
      public Builder setFighting(long value) {
        
        fighting_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *战力
       * </pre>
       *
       * <code>int64 fighting = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearFighting() {
        
        fighting_ = 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.PbArenaTopPlayer)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaTopPlayer)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaTopPlayer getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 1;</code>
     * @return The playerId.
     */
    long getPlayerId();

    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 2;</code>
     * @return The nick.
     */
    java.lang.String getNick();
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 2;</code>
     * @return The bytes for nick.
     */
    com.google.protobuf.ByteString
        getNickBytes();

    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 3;</code>
     * @return The head.
     */
    java.lang.String getHead();
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 3;</code>
     * @return The bytes for head.
     */
    com.google.protobuf.ByteString
        getHeadBytes();

    /**
     * <pre>
     *战斗时间戳，毫秒
     * </pre>
     *
     * <code>int64 battle_time = 4;</code>
     * @return The battleTime.
     */
    long getBattleTime();

    /**
     * <pre>
     *1胜利，2失败
     * </pre>
     *
     * <code>int32 result = 5;</code>
     * @return The result.
     */
    int getResult();

    /**
     * <pre>
     *积分增减
     * </pre>
     *
     * <code>int32 score = 6;</code>
     * @return The score.
     */
    int getScore();
  }
  /**
   * Protobuf type {@code pb.PbArenaRecord}
   */
  public  static final class PbArenaRecord extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaRecord)
      PbArenaRecordOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaRecord.newBuilder() to construct.
    private PbArenaRecord(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaRecord() {
      nick_ = "";
      head_ = "";
    }

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

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

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

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

              head_ = s;
              break;
            }
            case 32: {

              battleTime_ = input.readInt64();
              break;
            }
            case 40: {

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

              score_ = 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.arena.Arena.internal_static_pb_PbArenaRecord_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRecord_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder.class);
    }

    public static final int PLAYER_ID_FIELD_NUMBER = 1;
    private long playerId_;
    /**
     * <pre>
     *玩家ID
     * </pre>
     *
     * <code>int64 player_id = 1;</code>
     * @return The playerId.
     */
    public long getPlayerId() {
      return playerId_;
    }

    public static final int NICK_FIELD_NUMBER = 2;
    private volatile java.lang.Object nick_;
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 2;</code>
     * @return The nick.
     */
    public java.lang.String getNick() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nick_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *昵称
     * </pre>
     *
     * <code>string nick = 2;</code>
     * @return The bytes for nick.
     */
    public com.google.protobuf.ByteString
        getNickBytes() {
      java.lang.Object ref = nick_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nick_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HEAD_FIELD_NUMBER = 3;
    private volatile java.lang.Object head_;
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 3;</code>
     * @return The head.
     */
    public java.lang.String getHead() {
      java.lang.Object ref = head_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        head_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *头像
     * </pre>
     *
     * <code>string head = 3;</code>
     * @return The bytes for head.
     */
    public com.google.protobuf.ByteString
        getHeadBytes() {
      java.lang.Object ref = head_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        head_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int BATTLE_TIME_FIELD_NUMBER = 4;
    private long battleTime_;
    /**
     * <pre>
     *战斗时间戳，毫秒
     * </pre>
     *
     * <code>int64 battle_time = 4;</code>
     * @return The battleTime.
     */
    public long getBattleTime() {
      return battleTime_;
    }

    public static final int RESULT_FIELD_NUMBER = 5;
    private int result_;
    /**
     * <pre>
     *1胜利，2失败
     * </pre>
     *
     * <code>int32 result = 5;</code>
     * @return The result.
     */
    public int getResult() {
      return result_;
    }

    public static final int SCORE_FIELD_NUMBER = 6;
    private int score_;
    /**
     * <pre>
     *积分增减
     * </pre>
     *
     * <code>int32 score = 6;</code>
     * @return The score.
     */
    public int getScore() {
      return score_;
    }

    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 (playerId_ != 0L) {
        output.writeInt64(1, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nick_);
      }
      if (!getHeadBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, head_);
      }
      if (battleTime_ != 0L) {
        output.writeInt64(4, battleTime_);
      }
      if (result_ != 0) {
        output.writeInt32(5, result_);
      }
      if (score_ != 0) {
        output.writeInt32(6, score_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (playerId_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, playerId_);
      }
      if (!getNickBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nick_);
      }
      if (!getHeadBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, head_);
      }
      if (battleTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(4, battleTime_);
      }
      if (result_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(5, result_);
      }
      if (score_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(6, score_);
      }
      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.arena.Arena.PbArenaRecord)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord other = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord) obj;

      if (getPlayerId()
          != other.getPlayerId()) return false;
      if (!getNick()
          .equals(other.getNick())) return false;
      if (!getHead()
          .equals(other.getHead())) return false;
      if (getBattleTime()
          != other.getBattleTime()) return false;
      if (getResult()
          != other.getResult()) return false;
      if (getScore()
          != other.getScore()) 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) + PLAYER_ID_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPlayerId());
      hash = (37 * hash) + NICK_FIELD_NUMBER;
      hash = (53 * hash) + getNick().hashCode();
      hash = (37 * hash) + HEAD_FIELD_NUMBER;
      hash = (53 * hash) + getHead().hashCode();
      hash = (37 * hash) + BATTLE_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getBattleTime());
      hash = (37 * hash) + RESULT_FIELD_NUMBER;
      hash = (53 * hash) + getResult();
      hash = (37 * hash) + SCORE_FIELD_NUMBER;
      hash = (53 * hash) + getScore();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRecord_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.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();
        playerId_ = 0L;

        nick_ = "";

        head_ = "";

        battleTime_ = 0L;

        result_ = 0;

        score_ = 0;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaRecord_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord result = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord(this);
        result.playerId_ = playerId_;
        result.nick_ = nick_;
        result.head_ = head_;
        result.battleTime_ = battleTime_;
        result.result_ = result_;
        result.score_ = score_;
        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.arena.Arena.PbArenaRecord) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord.getDefaultInstance()) return this;
        if (other.getPlayerId() != 0L) {
          setPlayerId(other.getPlayerId());
        }
        if (!other.getNick().isEmpty()) {
          nick_ = other.nick_;
          onChanged();
        }
        if (!other.getHead().isEmpty()) {
          head_ = other.head_;
          onChanged();
        }
        if (other.getBattleTime() != 0L) {
          setBattleTime(other.getBattleTime());
        }
        if (other.getResult() != 0) {
          setResult(other.getResult());
        }
        if (other.getScore() != 0) {
          setScore(other.getScore());
        }
        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.arena.Arena.PbArenaRecord parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long playerId_ ;
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @return The playerId.
       */
      public long getPlayerId() {
        return playerId_;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @param value The playerId to set.
       * @return This builder for chaining.
       */
      public Builder setPlayerId(long value) {
        
        playerId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *玩家ID
       * </pre>
       *
       * <code>int64 player_id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPlayerId() {
        
        playerId_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object nick_ = "";
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 2;</code>
       * @return The nick.
       */
      public java.lang.String getNick() {
        java.lang.Object ref = nick_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nick_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 2;</code>
       * @return The bytes for nick.
       */
      public com.google.protobuf.ByteString
          getNickBytes() {
        java.lang.Object ref = nick_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nick_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 2;</code>
       * @param value The nick to set.
       * @return This builder for chaining.
       */
      public Builder setNick(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nick_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearNick() {
        
        nick_ = getDefaultInstance().getNick();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *昵称
       * </pre>
       *
       * <code>string nick = 2;</code>
       * @param value The bytes for nick to set.
       * @return This builder for chaining.
       */
      public Builder setNickBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nick_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object head_ = "";
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 3;</code>
       * @return The head.
       */
      public java.lang.String getHead() {
        java.lang.Object ref = head_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          head_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 3;</code>
       * @return The bytes for head.
       */
      public com.google.protobuf.ByteString
          getHeadBytes() {
        java.lang.Object ref = head_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          head_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 3;</code>
       * @param value The head to set.
       * @return This builder for chaining.
       */
      public Builder setHead(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        head_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearHead() {
        
        head_ = getDefaultInstance().getHead();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *头像
       * </pre>
       *
       * <code>string head = 3;</code>
       * @param value The bytes for head to set.
       * @return This builder for chaining.
       */
      public Builder setHeadBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        head_ = value;
        onChanged();
        return this;
      }

      private long battleTime_ ;
      /**
       * <pre>
       *战斗时间戳，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 4;</code>
       * @return The battleTime.
       */
      public long getBattleTime() {
        return battleTime_;
      }
      /**
       * <pre>
       *战斗时间戳，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 4;</code>
       * @param value The battleTime to set.
       * @return This builder for chaining.
       */
      public Builder setBattleTime(long value) {
        
        battleTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *战斗时间戳，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearBattleTime() {
        
        battleTime_ = 0L;
        onChanged();
        return this;
      }

      private int result_ ;
      /**
       * <pre>
       *1胜利，2失败
       * </pre>
       *
       * <code>int32 result = 5;</code>
       * @return The result.
       */
      public int getResult() {
        return result_;
      }
      /**
       * <pre>
       *1胜利，2失败
       * </pre>
       *
       * <code>int32 result = 5;</code>
       * @param value The result to set.
       * @return This builder for chaining.
       */
      public Builder setResult(int value) {
        
        result_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *1胜利，2失败
       * </pre>
       *
       * <code>int32 result = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearResult() {
        
        result_ = 0;
        onChanged();
        return this;
      }

      private int score_ ;
      /**
       * <pre>
       *积分增减
       * </pre>
       *
       * <code>int32 score = 6;</code>
       * @return The score.
       */
      public int getScore() {
        return score_;
      }
      /**
       * <pre>
       *积分增减
       * </pre>
       *
       * <code>int32 score = 6;</code>
       * @param value The score to set.
       * @return This builder for chaining.
       */
      public Builder setScore(int value) {
        
        score_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *积分增减
       * </pre>
       *
       * <code>int32 score = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearScore() {
        
        score_ = 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.PbArenaRecord)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaRecord)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaRecord getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

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

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

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleParam_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.Builder.class);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.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.arena.Arena.PbArenaBattleParam)) {
        return super.equals(obj);
      }
      pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam other = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam) 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.arena.Arena.PbArenaBattleParam parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam 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.arena.Arena.PbArenaBattleParam parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam 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.arena.Arena.PbArenaBattleParam parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam 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.arena.Arena.PbArenaBattleParam parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam 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.arena.Arena.PbArenaBattleParam parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam 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.arena.Arena.PbArenaBattleParam 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.PbArenaBattleParam}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:pb.PbArenaBattleParam)
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParamOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleParam_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleParam_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.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.arena.Arena.internal_static_pb_PbArenaBattleParam_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.getDefaultInstance();
      }

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

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

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam.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.arena.Arena.PbArenaBattleParam parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam) 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.PbArenaBattleParam)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaBattleParam)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleParam getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

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

    /**
     * <pre>
     *战斗耗时时长，毫秒
     * </pre>
     *
     * <code>int64 battle_time = 1;</code>
     * @return The battleTime.
     */
    long getBattleTime();

    /**
     * <pre>
     *积分的变化量 
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    long getScore();

    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> 
        getRewardsList();
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getRewards(int index);
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    int getRewardsCount();
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
        getRewardsOrBuilderList();
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getRewardsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code pb.PbArenaBattleResult}
   */
  public  static final class PbArenaBattleResult extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:pb.PbArenaBattleResult)
      PbArenaBattleResultOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use PbArenaBattleResult.newBuilder() to construct.
    private PbArenaBattleResult(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private PbArenaBattleResult() {
      rewards_ = java.util.Collections.emptyList();
    }

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

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

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

              score_ = input.readInt64();
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                rewards_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing>();
                mutable_bitField0_ |= 0x00000001;
              }
              rewards_.add(
                  input.readMessage(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          rewards_ = java.util.Collections.unmodifiableList(rewards_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleResult_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleResult_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.Builder.class);
    }

    public static final int BATTLE_TIME_FIELD_NUMBER = 1;
    private long battleTime_;
    /**
     * <pre>
     *战斗耗时时长，毫秒
     * </pre>
     *
     * <code>int64 battle_time = 1;</code>
     * @return The battleTime.
     */
    public long getBattleTime() {
      return battleTime_;
    }

    public static final int SCORE_FIELD_NUMBER = 2;
    private long score_;
    /**
     * <pre>
     *积分的变化量 
     * </pre>
     *
     * <code>int64 score = 2;</code>
     * @return The score.
     */
    public long getScore() {
      return score_;
    }

    public static final int REWARDS_FIELD_NUMBER = 3;
    private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> rewards_;
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> getRewardsList() {
      return rewards_;
    }
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
        getRewardsOrBuilderList() {
      return rewards_;
    }
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    public int getRewardsCount() {
      return rewards_.size();
    }
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getRewards(int index) {
      return rewards_.get(index);
    }
    /**
     * <pre>
     *挑战奖励
     * </pre>
     *
     * <code>repeated .pb.PbThing rewards = 3;</code>
     */
    public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getRewardsOrBuilder(
        int index) {
      return rewards_.get(index);
    }

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

      memoizedIsInitialized = 1;
      return true;
    }

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

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

      size = 0;
      if (battleTime_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, battleTime_);
      }
      if (score_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, score_);
      }
      for (int i = 0; i < rewards_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, rewards_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (getBattleTime()
          != other.getBattleTime()) return false;
      if (getScore()
          != other.getScore()) return false;
      if (!getRewardsList()
          .equals(other.getRewardsList())) 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) + BATTLE_TIME_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getBattleTime());
      hash = (37 * hash) + SCORE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getScore());
      if (getRewardsCount() > 0) {
        hash = (37 * hash) + REWARDS_FIELD_NUMBER;
        hash = (53 * hash) + getRewardsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

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

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleResult_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.class, pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.Builder.class);
      }

      // Construct using pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

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

        score_ = 0L;

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

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.internal_static_pb_PbArenaBattleResult_descriptor;
      }

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult getDefaultInstanceForType() {
        return pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.getDefaultInstance();
      }

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

      @java.lang.Override
      public pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult buildPartial() {
        pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult result = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult(this);
        int from_bitField0_ = bitField0_;
        result.battleTime_ = battleTime_;
        result.score_ = score_;
        if (rewardsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            rewards_ = java.util.Collections.unmodifiableList(rewards_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.rewards_ = rewards_;
        } else {
          result.rewards_ = rewardsBuilder_.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.arena.Arena.PbArenaBattleResult) {
          return mergeFrom((pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult other) {
        if (other == pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult.getDefaultInstance()) return this;
        if (other.getBattleTime() != 0L) {
          setBattleTime(other.getBattleTime());
        }
        if (other.getScore() != 0L) {
          setScore(other.getScore());
        }
        if (rewardsBuilder_ == null) {
          if (!other.rewards_.isEmpty()) {
            if (rewards_.isEmpty()) {
              rewards_ = other.rewards_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureRewardsIsMutable();
              rewards_.addAll(other.rewards_);
            }
            onChanged();
          }
        } else {
          if (!other.rewards_.isEmpty()) {
            if (rewardsBuilder_.isEmpty()) {
              rewardsBuilder_.dispose();
              rewardsBuilder_ = null;
              rewards_ = other.rewards_;
              bitField0_ = (bitField0_ & ~0x00000001);
              rewardsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getRewardsFieldBuilder() : null;
            } else {
              rewardsBuilder_.addAllMessages(other.rewards_);
            }
          }
        }
        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.arena.Arena.PbArenaBattleResult parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private long battleTime_ ;
      /**
       * <pre>
       *战斗耗时时长，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 1;</code>
       * @return The battleTime.
       */
      public long getBattleTime() {
        return battleTime_;
      }
      /**
       * <pre>
       *战斗耗时时长，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 1;</code>
       * @param value The battleTime to set.
       * @return This builder for chaining.
       */
      public Builder setBattleTime(long value) {
        
        battleTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *战斗耗时时长，毫秒
       * </pre>
       *
       * <code>int64 battle_time = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearBattleTime() {
        
        battleTime_ = 0L;
        onChanged();
        return this;
      }

      private long score_ ;
      /**
       * <pre>
       *积分的变化量 
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return The score.
       */
      public long getScore() {
        return score_;
      }
      /**
       * <pre>
       *积分的变化量 
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @param value The score to set.
       * @return This builder for chaining.
       */
      public Builder setScore(long value) {
        
        score_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *积分的变化量 
       * </pre>
       *
       * <code>int64 score = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearScore() {
        
        score_ = 0L;
        onChanged();
        return this;
      }

      private java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> rewards_ =
        java.util.Collections.emptyList();
      private void ensureRewardsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          rewards_ = new java.util.ArrayList<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing>(rewards_);
          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> rewardsBuilder_;

      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> getRewardsList() {
        if (rewardsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(rewards_);
        } else {
          return rewardsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public int getRewardsCount() {
        if (rewardsBuilder_ == null) {
          return rewards_.size();
        } else {
          return rewardsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing getRewards(int index) {
        if (rewardsBuilder_ == null) {
          return rewards_.get(index);
        } else {
          return rewardsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder setRewards(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (rewardsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRewardsIsMutable();
          rewards_.set(index, value);
          onChanged();
        } else {
          rewardsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder setRewards(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (rewardsBuilder_ == null) {
          ensureRewardsIsMutable();
          rewards_.set(index, builderForValue.build());
          onChanged();
        } else {
          rewardsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder addRewards(pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (rewardsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRewardsIsMutable();
          rewards_.add(value);
          onChanged();
        } else {
          rewardsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder addRewards(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing value) {
        if (rewardsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureRewardsIsMutable();
          rewards_.add(index, value);
          onChanged();
        } else {
          rewardsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder addRewards(
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (rewardsBuilder_ == null) {
          ensureRewardsIsMutable();
          rewards_.add(builderForValue.build());
          onChanged();
        } else {
          rewardsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder addRewards(
          int index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder builderForValue) {
        if (rewardsBuilder_ == null) {
          ensureRewardsIsMutable();
          rewards_.add(index, builderForValue.build());
          onChanged();
        } else {
          rewardsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder addAllRewards(
          java.lang.Iterable<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing> values) {
        if (rewardsBuilder_ == null) {
          ensureRewardsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, rewards_);
          onChanged();
        } else {
          rewardsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder clearRewards() {
        if (rewardsBuilder_ == null) {
          rewards_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          rewardsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public Builder removeRewards(int index) {
        if (rewardsBuilder_ == null) {
          ensureRewardsIsMutable();
          rewards_.remove(index);
          onChanged();
        } else {
          rewardsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder getRewardsBuilder(
          int index) {
        return getRewardsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder getRewardsOrBuilder(
          int index) {
        if (rewardsBuilder_ == null) {
          return rewards_.get(index);  } else {
          return rewardsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public java.util.List<? extends pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThingOrBuilder> 
           getRewardsOrBuilderList() {
        if (rewardsBuilder_ != null) {
          return rewardsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(rewards_);
        }
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder addRewardsBuilder() {
        return getRewardsFieldBuilder().addBuilder(
            pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.getDefaultInstance());
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder addRewardsBuilder(
          int index) {
        return getRewardsFieldBuilder().addBuilder(
            index, pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.getDefaultInstance());
      }
      /**
       * <pre>
       *挑战奖励
       * </pre>
       *
       * <code>repeated .pb.PbThing rewards = 3;</code>
       */
      public java.util.List<pb.xiugou.x1.protobuf.ministruct.MiniStruct.PbThing.Builder> 
           getRewardsBuilderList() {
        return getRewardsFieldBuilder().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> 
          getRewardsFieldBuilder() {
        if (rewardsBuilder_ == null) {
          rewardsBuilder_ = 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>(
                  rewards_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          rewards_ = null;
        }
        return rewardsBuilder_;
      }
      @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.PbArenaBattleResult)
    }

    // @@protoc_insertion_point(class_scope:pb.PbArenaBattleResult)
    private static final pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult();
    }

    public static pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

    @java.lang.Override
    public pb.xiugou.x1.protobuf.arena.Arena.PbArenaBattleResult getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaTopInfoRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaTopInfoRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaTopInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaTopInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaResumeInfoRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaResumeInfoRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaResumeInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaResumeInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaInfoRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaInfoRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaInfoResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaInfoResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaChallengeRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaChallengeRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaChallengeResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaChallengeResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaRefreshRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaRefreshRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaRefreshResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaRefreshResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaRecordRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaRecordRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_ArenaRecordResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_ArenaRecordResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaFighter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaFighter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaHero_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaHero_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaRanker_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaRanker_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaTopPlayer_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaTopPlayer_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaRecord_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaRecord_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaBattleParam_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaBattleParam_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_pb_PbArenaBattleResult_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_pb_PbArenaBattleResult_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\013Arena.proto\022\002pb\032\020MiniStruct.proto\032\017For" +
      "mation.proto\"6\n\023ArenaTopInfoRequest\"\037\n\005P" +
      "roto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\301\367\347\001\"b\n\024ArenaTop" +
      "InfoResponse\022)\n\013top_players\030\001 \003(\0132\024.pb.P" +
      "bArenaTopPlayer\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n" +
      "\002ID\020\301\367\347\001\"9\n\026ArenaResumeInfoRequest\"\037\n\005Pr" +
      "oto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\302\367\347\001\"l\n\027ArenaResu" +
      "meInfoResponse\022\014\n\004rank\030\001 \001(\005\022\r\n\005score\030\002 " +
      "\001(\003\022\023\n\013settle_time\030\003 \001(\003\"\037\n\005Proto\022\013\n\007UNK" +
      "NOWN\020\000\022\t\n\002ID\020\302\367\347\001\"3\n\020ArenaInfoRequest\"\037\n" +
      "\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\303\367\347\001\"\351\001\n\021Arena" +
      "InfoResponse\022)\n\013top_players\030\001 \003(\0132\024.pb.P" +
      "bArenaTopPlayer\022\"\n\007my_rank\030\002 \001(\0132\021.pb.Pb" +
      "ArenaRanker\022&\n\013competitors\030\003 \003(\0132\021.pb.Pb" +
      "ArenaRanker\022\025\n\rchallenge_num\030\004 \001(\005\022\017\n\007bu" +
      "y_num\030\005 \001(\005\022\024\n\014refresh_time\030\006 \001(\003\"\037\n\005Pro" +
      "to\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\303\367\347\001\"\227\001\n\025ArenaChal" +
      "lengeRequest\022\021\n\tplayer_id\030\001 \001(\003\022\021\n\tserve" +
      "r_id\030\002 \001(\005\022\021\n\tmain_hero\030\003 \001(\005\022$\n\010pos_lis" +
      "t\030\004 \003(\0132\022.pb.PbFormationPos\"\037\n\005Proto\022\013\n\007" +
      "UNKNOWN\020\000\022\t\n\002ID\020\304\367\347\001\"\205\001\n\026ArenaChallengeR" +
      "esponse\022$\n\010attacker\030\001 \001(\0132\022.pb.PbArenaFi" +
      "ghter\022$\n\010defender\030\002 \001(\0132\022.pb.PbArenaFigh" +
      "ter\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\304\367\347\001\"6\n\023" +
      "ArenaRefreshRequest\"\037\n\005Proto\022\013\n\007UNKNOWN\020" +
      "\000\022\t\n\002ID\020\305\367\347\001\"_\n\024ArenaRefreshResponse\022&\n\013" +
      "competitors\030\001 \003(\0132\021.pb.PbArenaRanker\"\037\n\005" +
      "Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020\305\367\347\001\"C\n\022ArenaRe" +
      "cordRequest\022\014\n\004type\030\001 \001(\005\"\037\n\005Proto\022\013\n\007UN" +
      "KNOWN\020\000\022\t\n\002ID\020\306\367\347\001\"h\n\023ArenaRecordRespons" +
      "e\022\014\n\004type\030\001 \001(\005\022\"\n\007records\030\002 \003(\0132\021.pb.Pb" +
      "ArenaRecord\"\037\n\005Proto\022\013\n\007UNKNOWN\020\000\022\t\n\002ID\020" +
      "\306\367\347\001\"b\n\016PbArenaFighter\022\014\n\004nick\030\001 \001(\t\022\r\n\005" +
      "score\030\002 \001(\003\022\020\n\010fighting\030\003 \001(\003\022!\n\010heroPos" +
      "s\030\004 \003(\0132\017.pb.PbArenaHero\",\n\013PbArenaHero\022" +
      "\020\n\010identity\030\001 \001(\005\022\013\n\003pos\030\002 \001(\005\"\217\001\n\rPbAre" +
      "naRanker\022\014\n\004rank\030\001 \001(\005\022\021\n\tplayer_id\030\002 \001(" +
      "\003\022\014\n\004nick\030\003 \001(\t\022\r\n\005score\030\004 \001(\003\022\020\n\010fighti" +
      "ng\030\005 \001(\003\022\014\n\004head\030\006 \001(\t\022\021\n\tserver_id\030\007 \001(" +
      "\005\022\r\n\005image\030\010 \001(\005\"b\n\020PbArenaTopPlayer\022\014\n\004" +
      "rank\030\001 \001(\005\022\021\n\tplayer_id\030\002 \001(\003\022\014\n\004nick\030\003 " +
      "\001(\t\022\r\n\005image\030\004 \001(\005\022\020\n\010fighting\030\005 \001(\003\"r\n\r" +
      "PbArenaRecord\022\021\n\tplayer_id\030\001 \001(\003\022\014\n\004nick" +
      "\030\002 \001(\t\022\014\n\004head\030\003 \001(\t\022\023\n\013battle_time\030\004 \001(" +
      "\003\022\016\n\006result\030\005 \001(\005\022\r\n\005score\030\006 \001(\005\"\024\n\022PbAr" +
      "enaBattleParam\"W\n\023PbArenaBattleResult\022\023\n" +
      "\013battle_time\030\001 \001(\003\022\r\n\005score\030\002 \001(\003\022\034\n\007rew" +
      "ards\030\003 \003(\0132\013.pb.PbThingB5\n\033pb.xiugou.x1." +
      "protobuf.arena\252\002\025pb.xiugou.x1.protobufb\006" +
      "proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          pb.xiugou.x1.protobuf.ministruct.MiniStruct.getDescriptor(),
          pb.xiugou.x1.protobuf.formation.Formation.getDescriptor(),
        });
    internal_static_pb_ArenaTopInfoRequest_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_pb_ArenaTopInfoRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaTopInfoRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_ArenaTopInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_pb_ArenaTopInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaTopInfoResponse_descriptor,
        new java.lang.String[] { "TopPlayers", });
    internal_static_pb_ArenaResumeInfoRequest_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_pb_ArenaResumeInfoRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaResumeInfoRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_ArenaResumeInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_pb_ArenaResumeInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaResumeInfoResponse_descriptor,
        new java.lang.String[] { "Rank", "Score", "SettleTime", });
    internal_static_pb_ArenaInfoRequest_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_pb_ArenaInfoRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaInfoRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_ArenaInfoResponse_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_pb_ArenaInfoResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaInfoResponse_descriptor,
        new java.lang.String[] { "TopPlayers", "MyRank", "Competitors", "ChallengeNum", "BuyNum", "RefreshTime", });
    internal_static_pb_ArenaChallengeRequest_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_pb_ArenaChallengeRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaChallengeRequest_descriptor,
        new java.lang.String[] { "PlayerId", "ServerId", "MainHero", "PosList", });
    internal_static_pb_ArenaChallengeResponse_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_pb_ArenaChallengeResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaChallengeResponse_descriptor,
        new java.lang.String[] { "Attacker", "Defender", });
    internal_static_pb_ArenaRefreshRequest_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_pb_ArenaRefreshRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaRefreshRequest_descriptor,
        new java.lang.String[] { });
    internal_static_pb_ArenaRefreshResponse_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_pb_ArenaRefreshResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaRefreshResponse_descriptor,
        new java.lang.String[] { "Competitors", });
    internal_static_pb_ArenaRecordRequest_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_pb_ArenaRecordRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaRecordRequest_descriptor,
        new java.lang.String[] { "Type", });
    internal_static_pb_ArenaRecordResponse_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_pb_ArenaRecordResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_ArenaRecordResponse_descriptor,
        new java.lang.String[] { "Type", "Records", });
    internal_static_pb_PbArenaFighter_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_pb_PbArenaFighter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaFighter_descriptor,
        new java.lang.String[] { "Nick", "Score", "Fighting", "HeroPoss", });
    internal_static_pb_PbArenaHero_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_pb_PbArenaHero_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaHero_descriptor,
        new java.lang.String[] { "Identity", "Pos", });
    internal_static_pb_PbArenaRanker_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_pb_PbArenaRanker_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaRanker_descriptor,
        new java.lang.String[] { "Rank", "PlayerId", "Nick", "Score", "Fighting", "Head", "ServerId", "Image", });
    internal_static_pb_PbArenaTopPlayer_descriptor =
      getDescriptor().getMessageTypes().get(15);
    internal_static_pb_PbArenaTopPlayer_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaTopPlayer_descriptor,
        new java.lang.String[] { "Rank", "PlayerId", "Nick", "Image", "Fighting", });
    internal_static_pb_PbArenaRecord_descriptor =
      getDescriptor().getMessageTypes().get(16);
    internal_static_pb_PbArenaRecord_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaRecord_descriptor,
        new java.lang.String[] { "PlayerId", "Nick", "Head", "BattleTime", "Result", "Score", });
    internal_static_pb_PbArenaBattleParam_descriptor =
      getDescriptor().getMessageTypes().get(17);
    internal_static_pb_PbArenaBattleParam_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaBattleParam_descriptor,
        new java.lang.String[] { });
    internal_static_pb_PbArenaBattleResult_descriptor =
      getDescriptor().getMessageTypes().get(18);
    internal_static_pb_PbArenaBattleResult_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_pb_PbArenaBattleResult_descriptor,
        new java.lang.String[] { "BattleTime", "Score", "Rewards", });
    pb.xiugou.x1.protobuf.ministruct.MiniStruct.getDescriptor();
    pb.xiugou.x1.protobuf.formation.Formation.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
