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

package io.grasscutter.net.proto.define;

/**
 * Protobuf type {@code NAPNKPIHEBF}
 */
public final class NAPNKPIHEBF extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:NAPNKPIHEBF)
    NAPNKPIHEBFOrBuilder {
private static final long serialVersionUID = 0L;
  // Use NAPNKPIHEBF.newBuilder() to construct.
  private NAPNKPIHEBF(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
    super(builder);
  }
  private NAPNKPIHEBF() {
    pBGDCGODOKP_ = java.util.Collections.emptyList();
    mLKDDNGAMMO_ = emptyIntList();
    talentIdList_ = emptyIntList();
    serverBuffList_ = java.util.Collections.emptyList();
    teamResonanceList_ = emptyIntList();
    inherentProudSkillList_ = emptyIntList();
  }

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

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

            uid_ = input.readUInt32();
            break;
          }
          case 16: {

            avatarId_ = input.readUInt32();
            break;
          }
          case 24: {

            guid_ = input.readUInt64();
            break;
          }
          case 32: {

            peerId_ = input.readUInt32();
            break;
          }
          case 40: {
            if (!((mutable_bitField0_ & 0x00000004) != 0)) {
              mLKDDNGAMMO_ = newIntList();
              mutable_bitField0_ |= 0x00000004;
            }
            mLKDDNGAMMO_.addInt(input.readUInt32());
            break;
          }
          case 42: {
            int length = input.readRawVarint32();
            int limit = input.pushLimit(length);
            if (!((mutable_bitField0_ & 0x00000004) != 0) && input.getBytesUntilLimit() > 0) {
              mLKDDNGAMMO_ = newIntList();
              mutable_bitField0_ |= 0x00000004;
            }
            while (input.getBytesUntilLimit() > 0) {
              mLKDDNGAMMO_.addInt(input.readUInt32());
            }
            input.popLimit(limit);
            break;
          }
          case 48: {

            skillDepotId_ = input.readUInt32();
            break;
          }
          case 56: {
            if (!((mutable_bitField0_ & 0x00000008) != 0)) {
              talentIdList_ = newIntList();
              mutable_bitField0_ |= 0x00000008;
            }
            talentIdList_.addInt(input.readUInt32());
            break;
          }
          case 58: {
            int length = input.readRawVarint32();
            int limit = input.pushLimit(length);
            if (!((mutable_bitField0_ & 0x00000008) != 0) && input.getBytesUntilLimit() > 0) {
              talentIdList_ = newIntList();
              mutable_bitField0_ |= 0x00000008;
            }
            while (input.getBytesUntilLimit() > 0) {
              talentIdList_.addInt(input.readUInt32());
            }
            input.popLimit(limit);
            break;
          }
          case 66: {
            io.grasscutter.net.proto.define.SceneWeaponInfo.Builder subBuilder = null;
            if (weapon_ != null) {
              subBuilder = weapon_.toBuilder();
            }
            weapon_ = input.readMessage(io.grasscutter.net.proto.define.SceneWeaponInfo.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(weapon_);
              weapon_ = subBuilder.buildPartial();
            }

            break;
          }
          case 74: {
            if (!((mutable_bitField0_ & 0x00000001) != 0)) {
              pBGDCGODOKP_ = new java.util.ArrayList<io.grasscutter.net.proto.define.SceneReliquaryInfo>();
              mutable_bitField0_ |= 0x00000001;
            }
            pBGDCGODOKP_.add(
                input.readMessage(io.grasscutter.net.proto.define.SceneReliquaryInfo.parser(), extensionRegistry));
            break;
          }
          case 88: {

            coreProudSkillLevel_ = input.readUInt32();
            break;
          }
          case 96: {
            if (!((mutable_bitField0_ & 0x00000080) != 0)) {
              inherentProudSkillList_ = newIntList();
              mutable_bitField0_ |= 0x00000080;
            }
            inherentProudSkillList_.addInt(input.readUInt32());
            break;
          }
          case 98: {
            int length = input.readRawVarint32();
            int limit = input.pushLimit(length);
            if (!((mutable_bitField0_ & 0x00000080) != 0) && input.getBytesUntilLimit() > 0) {
              inherentProudSkillList_ = newIntList();
              mutable_bitField0_ |= 0x00000080;
            }
            while (input.getBytesUntilLimit() > 0) {
              inherentProudSkillList_.addInt(input.readUInt32());
            }
            input.popLimit(limit);
            break;
          }
          case 106: {
            if (!((mutable_bitField0_ & 0x00000002) != 0)) {
              skillLevelMap_ = com.google.protobuf.MapField.newMapField(
                  SkillLevelMapDefaultEntryHolder.defaultEntry);
              mutable_bitField0_ |= 0x00000002;
            }
            com.google.protobuf.MapEntry<java.lang.Integer, java.lang.Integer>
            skillLevelMap__ = input.readMessage(
                SkillLevelMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
            skillLevelMap_.getMutableMap().put(
                skillLevelMap__.getKey(), skillLevelMap__.getValue());
            break;
          }
          case 114: {
            if (!((mutable_bitField0_ & 0x00000020) != 0)) {
              proudSkillExtraLevelMap_ = com.google.protobuf.MapField.newMapField(
                  ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry);
              mutable_bitField0_ |= 0x00000020;
            }
            com.google.protobuf.MapEntry<java.lang.Integer, java.lang.Integer>
            proudSkillExtraLevelMap__ = input.readMessage(
                ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
            proudSkillExtraLevelMap_.getMutableMap().put(
                proudSkillExtraLevelMap__.getKey(), proudSkillExtraLevelMap__.getValue());
            break;
          }
          case 122: {
            if (!((mutable_bitField0_ & 0x00000010) != 0)) {
              serverBuffList_ = new java.util.ArrayList<io.grasscutter.net.proto.define.ServerBuff>();
              mutable_bitField0_ |= 0x00000010;
            }
            serverBuffList_.add(
                input.readMessage(io.grasscutter.net.proto.define.ServerBuff.parser(), extensionRegistry));
            break;
          }
          case 128: {
            if (!((mutable_bitField0_ & 0x00000040) != 0)) {
              teamResonanceList_ = newIntList();
              mutable_bitField0_ |= 0x00000040;
            }
            teamResonanceList_.addInt(input.readUInt32());
            break;
          }
          case 130: {
            int length = input.readRawVarint32();
            int limit = input.pushLimit(length);
            if (!((mutable_bitField0_ & 0x00000040) != 0) && input.getBytesUntilLimit() > 0) {
              teamResonanceList_ = newIntList();
              mutable_bitField0_ |= 0x00000040;
            }
            while (input.getBytesUntilLimit() > 0) {
              teamResonanceList_.addInt(input.readUInt32());
            }
            input.popLimit(limit);
            break;
          }
          case 136: {

            wearingFlycloakId_ = input.readUInt32();
            break;
          }
          case 144: {

            bornTime_ = input.readUInt32();
            break;
          }
          case 152: {

            costumeId_ = input.readUInt32();
            break;
          }
          case 162: {
            io.grasscutter.net.proto.define.OGAAEKDALAL.Builder subBuilder = null;
            if (kFNKGCDHMJK_ != null) {
              subBuilder = kFNKGCDHMJK_.toBuilder();
            }
            kFNKGCDHMJK_ = input.readMessage(io.grasscutter.net.proto.define.OGAAEKDALAL.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(kFNKGCDHMJK_);
              kFNKGCDHMJK_ = subBuilder.buildPartial();
            }

            break;
          }
          case 170: {
            io.grasscutter.net.proto.define.AvatarExcelInfo.Builder subBuilder = null;
            if (excelInfo_ != null) {
              subBuilder = excelInfo_.toBuilder();
            }
            excelInfo_ = input.readMessage(io.grasscutter.net.proto.define.AvatarExcelInfo.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(excelInfo_);
              excelInfo_ = subBuilder.buildPartial();
            }

            break;
          }
          case 176: {

            animHash_ = input.readUInt32();
            break;
          }
          case 184: {

            traceEffectId_ = input.readUInt32();
            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_ & 0x00000004) != 0)) {
        mLKDDNGAMMO_.makeImmutable(); // C
      }
      if (((mutable_bitField0_ & 0x00000008) != 0)) {
        talentIdList_.makeImmutable(); // C
      }
      if (((mutable_bitField0_ & 0x00000001) != 0)) {
        pBGDCGODOKP_ = java.util.Collections.unmodifiableList(pBGDCGODOKP_);
      }
      if (((mutable_bitField0_ & 0x00000080) != 0)) {
        inherentProudSkillList_.makeImmutable(); // C
      }
      if (((mutable_bitField0_ & 0x00000010) != 0)) {
        serverBuffList_ = java.util.Collections.unmodifiableList(serverBuffList_);
      }
      if (((mutable_bitField0_ & 0x00000040) != 0)) {
        teamResonanceList_.makeImmutable(); // C
      }
      this.unknownFields = unknownFields.build();
      makeExtensionsImmutable();
    }
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_descriptor;
  }

  @SuppressWarnings({"rawtypes"})
  @java.lang.Override
  protected com.google.protobuf.MapField internalGetMapField(
      int number) {
    switch (number) {
      case 13:
        return internalGetSkillLevelMap();
      case 14:
        return internalGetProudSkillExtraLevelMap();
      default:
        throw new RuntimeException(
            "Invalid map field number: " + number);
    }
  }
  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            io.grasscutter.net.proto.define.NAPNKPIHEBF.class, io.grasscutter.net.proto.define.NAPNKPIHEBF.Builder.class);
  }

  public static final int PBGDCGODOKP_FIELD_NUMBER = 9;
  private java.util.List<io.grasscutter.net.proto.define.SceneReliquaryInfo> pBGDCGODOKP_;
  /**
   * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
   */
  @java.lang.Override
  public java.util.List<io.grasscutter.net.proto.define.SceneReliquaryInfo> getPBGDCGODOKPList() {
    return pBGDCGODOKP_;
  }
  /**
   * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
   */
  @java.lang.Override
  public java.util.List<? extends io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder> 
      getPBGDCGODOKPOrBuilderList() {
    return pBGDCGODOKP_;
  }
  /**
   * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
   */
  @java.lang.Override
  public int getPBGDCGODOKPCount() {
    return pBGDCGODOKP_.size();
  }
  /**
   * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.SceneReliquaryInfo getPBGDCGODOKP(int index) {
    return pBGDCGODOKP_.get(index);
  }
  /**
   * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder getPBGDCGODOKPOrBuilder(
      int index) {
    return pBGDCGODOKP_.get(index);
  }

  public static final int SKILL_LEVEL_MAP_FIELD_NUMBER = 13;
  private static final class SkillLevelMapDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.Integer, java.lang.Integer> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.Integer, java.lang.Integer>newDefaultInstance(
                io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_SkillLevelMapEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.UINT32,
                0,
                com.google.protobuf.WireFormat.FieldType.UINT32,
                0);
  }
  private com.google.protobuf.MapField<
      java.lang.Integer, java.lang.Integer> skillLevelMap_;
  private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
  internalGetSkillLevelMap() {
    if (skillLevelMap_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          SkillLevelMapDefaultEntryHolder.defaultEntry);
    }
    return skillLevelMap_;
  }

  public int getSkillLevelMapCount() {
    return internalGetSkillLevelMap().getMap().size();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
   */

  @java.lang.Override
  public boolean containsSkillLevelMap(
      int key) {
    
    return internalGetSkillLevelMap().getMap().containsKey(key);
  }
  /**
   * Use {@link #getSkillLevelMapMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.Integer, java.lang.Integer> getSkillLevelMap() {
    return getSkillLevelMapMap();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
   */
  @java.lang.Override

  public java.util.Map<java.lang.Integer, java.lang.Integer> getSkillLevelMapMap() {
    return internalGetSkillLevelMap().getMap();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
   */
  @java.lang.Override

  public int getSkillLevelMapOrDefault(
      int key,
      int defaultValue) {
    
    java.util.Map<java.lang.Integer, java.lang.Integer> map =
        internalGetSkillLevelMap().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
   */
  @java.lang.Override

  public int getSkillLevelMapOrThrow(
      int key) {
    
    java.util.Map<java.lang.Integer, java.lang.Integer> map =
        internalGetSkillLevelMap().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int MLKDDNGAMMO_FIELD_NUMBER = 5;
  private com.google.protobuf.Internal.IntList mLKDDNGAMMO_;
  /**
   * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
   * @return A list containing the mLKDDNGAMMO.
   */
  @java.lang.Override
  public java.util.List<java.lang.Integer>
      getMLKDDNGAMMOList() {
    return mLKDDNGAMMO_;
  }
  /**
   * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
   * @return The count of mLKDDNGAMMO.
   */
  public int getMLKDDNGAMMOCount() {
    return mLKDDNGAMMO_.size();
  }
  /**
   * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
   * @param index The index of the element to return.
   * @return The mLKDDNGAMMO at the given index.
   */
  public int getMLKDDNGAMMO(int index) {
    return mLKDDNGAMMO_.getInt(index);
  }
  private int mLKDDNGAMMOMemoizedSerializedSize = -1;

  public static final int TALENT_ID_LIST_FIELD_NUMBER = 7;
  private com.google.protobuf.Internal.IntList talentIdList_;
  /**
   * <code>repeated uint32 talent_id_list = 7;</code>
   * @return A list containing the talentIdList.
   */
  @java.lang.Override
  public java.util.List<java.lang.Integer>
      getTalentIdListList() {
    return talentIdList_;
  }
  /**
   * <code>repeated uint32 talent_id_list = 7;</code>
   * @return The count of talentIdList.
   */
  public int getTalentIdListCount() {
    return talentIdList_.size();
  }
  /**
   * <code>repeated uint32 talent_id_list = 7;</code>
   * @param index The index of the element to return.
   * @return The talentIdList at the given index.
   */
  public int getTalentIdList(int index) {
    return talentIdList_.getInt(index);
  }
  private int talentIdListMemoizedSerializedSize = -1;

  public static final int SERVER_BUFF_LIST_FIELD_NUMBER = 15;
  private java.util.List<io.grasscutter.net.proto.define.ServerBuff> serverBuffList_;
  /**
   * <code>repeated .ServerBuff server_buff_list = 15;</code>
   */
  @java.lang.Override
  public java.util.List<io.grasscutter.net.proto.define.ServerBuff> getServerBuffListList() {
    return serverBuffList_;
  }
  /**
   * <code>repeated .ServerBuff server_buff_list = 15;</code>
   */
  @java.lang.Override
  public java.util.List<? extends io.grasscutter.net.proto.define.ServerBuffOrBuilder> 
      getServerBuffListOrBuilderList() {
    return serverBuffList_;
  }
  /**
   * <code>repeated .ServerBuff server_buff_list = 15;</code>
   */
  @java.lang.Override
  public int getServerBuffListCount() {
    return serverBuffList_.size();
  }
  /**
   * <code>repeated .ServerBuff server_buff_list = 15;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.ServerBuff getServerBuffList(int index) {
    return serverBuffList_.get(index);
  }
  /**
   * <code>repeated .ServerBuff server_buff_list = 15;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.ServerBuffOrBuilder getServerBuffListOrBuilder(
      int index) {
    return serverBuffList_.get(index);
  }

  public static final int PROUD_SKILL_EXTRA_LEVEL_MAP_FIELD_NUMBER = 14;
  private static final class ProudSkillExtraLevelMapDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.Integer, java.lang.Integer> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.Integer, java.lang.Integer>newDefaultInstance(
                io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_ProudSkillExtraLevelMapEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.UINT32,
                0,
                com.google.protobuf.WireFormat.FieldType.UINT32,
                0);
  }
  private com.google.protobuf.MapField<
      java.lang.Integer, java.lang.Integer> proudSkillExtraLevelMap_;
  private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
  internalGetProudSkillExtraLevelMap() {
    if (proudSkillExtraLevelMap_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry);
    }
    return proudSkillExtraLevelMap_;
  }

  public int getProudSkillExtraLevelMapCount() {
    return internalGetProudSkillExtraLevelMap().getMap().size();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
   */

  @java.lang.Override
  public boolean containsProudSkillExtraLevelMap(
      int key) {
    
    return internalGetProudSkillExtraLevelMap().getMap().containsKey(key);
  }
  /**
   * Use {@link #getProudSkillExtraLevelMapMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.Integer, java.lang.Integer> getProudSkillExtraLevelMap() {
    return getProudSkillExtraLevelMapMap();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
   */
  @java.lang.Override

  public java.util.Map<java.lang.Integer, java.lang.Integer> getProudSkillExtraLevelMapMap() {
    return internalGetProudSkillExtraLevelMap().getMap();
  }
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
   */
  @java.lang.Override

  public int getProudSkillExtraLevelMapOrDefault(
      int key,
      int defaultValue) {
    
    java.util.Map<java.lang.Integer, java.lang.Integer> map =
        internalGetProudSkillExtraLevelMap().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
   */
  @java.lang.Override

  public int getProudSkillExtraLevelMapOrThrow(
      int key) {
    
    java.util.Map<java.lang.Integer, java.lang.Integer> map =
        internalGetProudSkillExtraLevelMap().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int EXCEL_INFO_FIELD_NUMBER = 21;
  private io.grasscutter.net.proto.define.AvatarExcelInfo excelInfo_;
  /**
   * <code>.AvatarExcelInfo excel_info = 21;</code>
   * @return Whether the excelInfo field is set.
   */
  @java.lang.Override
  public boolean hasExcelInfo() {
    return excelInfo_ != null;
  }
  /**
   * <code>.AvatarExcelInfo excel_info = 21;</code>
   * @return The excelInfo.
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.AvatarExcelInfo getExcelInfo() {
    return excelInfo_ == null ? io.grasscutter.net.proto.define.AvatarExcelInfo.getDefaultInstance() : excelInfo_;
  }
  /**
   * <code>.AvatarExcelInfo excel_info = 21;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder getExcelInfoOrBuilder() {
    return getExcelInfo();
  }

  public static final int TEAM_RESONANCE_LIST_FIELD_NUMBER = 16;
  private com.google.protobuf.Internal.IntList teamResonanceList_;
  /**
   * <code>repeated uint32 team_resonance_list = 16;</code>
   * @return A list containing the teamResonanceList.
   */
  @java.lang.Override
  public java.util.List<java.lang.Integer>
      getTeamResonanceListList() {
    return teamResonanceList_;
  }
  /**
   * <code>repeated uint32 team_resonance_list = 16;</code>
   * @return The count of teamResonanceList.
   */
  public int getTeamResonanceListCount() {
    return teamResonanceList_.size();
  }
  /**
   * <code>repeated uint32 team_resonance_list = 16;</code>
   * @param index The index of the element to return.
   * @return The teamResonanceList at the given index.
   */
  public int getTeamResonanceList(int index) {
    return teamResonanceList_.getInt(index);
  }
  private int teamResonanceListMemoizedSerializedSize = -1;

  public static final int WEAPON_FIELD_NUMBER = 8;
  private io.grasscutter.net.proto.define.SceneWeaponInfo weapon_;
  /**
   * <code>.SceneWeaponInfo weapon = 8;</code>
   * @return Whether the weapon field is set.
   */
  @java.lang.Override
  public boolean hasWeapon() {
    return weapon_ != null;
  }
  /**
   * <code>.SceneWeaponInfo weapon = 8;</code>
   * @return The weapon.
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.SceneWeaponInfo getWeapon() {
    return weapon_ == null ? io.grasscutter.net.proto.define.SceneWeaponInfo.getDefaultInstance() : weapon_;
  }
  /**
   * <code>.SceneWeaponInfo weapon = 8;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.SceneWeaponInfoOrBuilder getWeaponOrBuilder() {
    return getWeapon();
  }

  public static final int KFNKGCDHMJK_FIELD_NUMBER = 20;
  private io.grasscutter.net.proto.define.OGAAEKDALAL kFNKGCDHMJK_;
  /**
   * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
   * @return Whether the kFNKGCDHMJK field is set.
   */
  @java.lang.Override
  public boolean hasKFNKGCDHMJK() {
    return kFNKGCDHMJK_ != null;
  }
  /**
   * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
   * @return The kFNKGCDHMJK.
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.OGAAEKDALAL getKFNKGCDHMJK() {
    return kFNKGCDHMJK_ == null ? io.grasscutter.net.proto.define.OGAAEKDALAL.getDefaultInstance() : kFNKGCDHMJK_;
  }
  /**
   * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
   */
  @java.lang.Override
  public io.grasscutter.net.proto.define.OGAAEKDALALOrBuilder getKFNKGCDHMJKOrBuilder() {
    return getKFNKGCDHMJK();
  }

  public static final int INHERENT_PROUD_SKILL_LIST_FIELD_NUMBER = 12;
  private com.google.protobuf.Internal.IntList inherentProudSkillList_;
  /**
   * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
   * @return A list containing the inherentProudSkillList.
   */
  @java.lang.Override
  public java.util.List<java.lang.Integer>
      getInherentProudSkillListList() {
    return inherentProudSkillList_;
  }
  /**
   * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
   * @return The count of inherentProudSkillList.
   */
  public int getInherentProudSkillListCount() {
    return inherentProudSkillList_.size();
  }
  /**
   * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
   * @param index The index of the element to return.
   * @return The inherentProudSkillList at the given index.
   */
  public int getInherentProudSkillList(int index) {
    return inherentProudSkillList_.getInt(index);
  }
  private int inherentProudSkillListMemoizedSerializedSize = -1;

  public static final int UID_FIELD_NUMBER = 1;
  private int uid_;
  /**
   * <code>uint32 uid = 1;</code>
   * @return The uid.
   */
  @java.lang.Override
  public int getUid() {
    return uid_;
  }

  public static final int TRACE_EFFECT_ID_FIELD_NUMBER = 23;
  private int traceEffectId_;
  /**
   * <code>uint32 trace_effect_id = 23;</code>
   * @return The traceEffectId.
   */
  @java.lang.Override
  public int getTraceEffectId() {
    return traceEffectId_;
  }

  public static final int ANIM_HASH_FIELD_NUMBER = 22;
  private int animHash_;
  /**
   * <code>uint32 anim_hash = 22;</code>
   * @return The animHash.
   */
  @java.lang.Override
  public int getAnimHash() {
    return animHash_;
  }

  public static final int AVATAR_ID_FIELD_NUMBER = 2;
  private int avatarId_;
  /**
   * <code>uint32 avatar_id = 2;</code>
   * @return The avatarId.
   */
  @java.lang.Override
  public int getAvatarId() {
    return avatarId_;
  }

  public static final int GUID_FIELD_NUMBER = 3;
  private long guid_;
  /**
   * <code>uint64 guid = 3;</code>
   * @return The guid.
   */
  @java.lang.Override
  public long getGuid() {
    return guid_;
  }

  public static final int CORE_PROUD_SKILL_LEVEL_FIELD_NUMBER = 11;
  private int coreProudSkillLevel_;
  /**
   * <code>uint32 core_proud_skill_level = 11;</code>
   * @return The coreProudSkillLevel.
   */
  @java.lang.Override
  public int getCoreProudSkillLevel() {
    return coreProudSkillLevel_;
  }

  public static final int COSTUME_ID_FIELD_NUMBER = 19;
  private int costumeId_;
  /**
   * <code>uint32 costume_id = 19;</code>
   * @return The costumeId.
   */
  @java.lang.Override
  public int getCostumeId() {
    return costumeId_;
  }

  public static final int PEER_ID_FIELD_NUMBER = 4;
  private int peerId_;
  /**
   * <code>uint32 peer_id = 4;</code>
   * @return The peerId.
   */
  @java.lang.Override
  public int getPeerId() {
    return peerId_;
  }

  public static final int SKILL_DEPOT_ID_FIELD_NUMBER = 6;
  private int skillDepotId_;
  /**
   * <code>uint32 skill_depot_id = 6;</code>
   * @return The skillDepotId.
   */
  @java.lang.Override
  public int getSkillDepotId() {
    return skillDepotId_;
  }

  public static final int BORN_TIME_FIELD_NUMBER = 18;
  private int bornTime_;
  /**
   * <code>uint32 born_time = 18;</code>
   * @return The bornTime.
   */
  @java.lang.Override
  public int getBornTime() {
    return bornTime_;
  }

  public static final int WEARING_FLYCLOAK_ID_FIELD_NUMBER = 17;
  private int wearingFlycloakId_;
  /**
   * <code>uint32 wearing_flycloak_id = 17;</code>
   * @return The wearingFlycloakId.
   */
  @java.lang.Override
  public int getWearingFlycloakId() {
    return wearingFlycloakId_;
  }

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

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    getSerializedSize();
    if (uid_ != 0) {
      output.writeUInt32(1, uid_);
    }
    if (avatarId_ != 0) {
      output.writeUInt32(2, avatarId_);
    }
    if (guid_ != 0L) {
      output.writeUInt64(3, guid_);
    }
    if (peerId_ != 0) {
      output.writeUInt32(4, peerId_);
    }
    if (getMLKDDNGAMMOList().size() > 0) {
      output.writeUInt32NoTag(42);
      output.writeUInt32NoTag(mLKDDNGAMMOMemoizedSerializedSize);
    }
    for (int i = 0; i < mLKDDNGAMMO_.size(); i++) {
      output.writeUInt32NoTag(mLKDDNGAMMO_.getInt(i));
    }
    if (skillDepotId_ != 0) {
      output.writeUInt32(6, skillDepotId_);
    }
    if (getTalentIdListList().size() > 0) {
      output.writeUInt32NoTag(58);
      output.writeUInt32NoTag(talentIdListMemoizedSerializedSize);
    }
    for (int i = 0; i < talentIdList_.size(); i++) {
      output.writeUInt32NoTag(talentIdList_.getInt(i));
    }
    if (weapon_ != null) {
      output.writeMessage(8, getWeapon());
    }
    for (int i = 0; i < pBGDCGODOKP_.size(); i++) {
      output.writeMessage(9, pBGDCGODOKP_.get(i));
    }
    if (coreProudSkillLevel_ != 0) {
      output.writeUInt32(11, coreProudSkillLevel_);
    }
    if (getInherentProudSkillListList().size() > 0) {
      output.writeUInt32NoTag(98);
      output.writeUInt32NoTag(inherentProudSkillListMemoizedSerializedSize);
    }
    for (int i = 0; i < inherentProudSkillList_.size(); i++) {
      output.writeUInt32NoTag(inherentProudSkillList_.getInt(i));
    }
    com.google.protobuf.GeneratedMessageV3
      .serializeIntegerMapTo(
        output,
        internalGetSkillLevelMap(),
        SkillLevelMapDefaultEntryHolder.defaultEntry,
        13);
    com.google.protobuf.GeneratedMessageV3
      .serializeIntegerMapTo(
        output,
        internalGetProudSkillExtraLevelMap(),
        ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry,
        14);
    for (int i = 0; i < serverBuffList_.size(); i++) {
      output.writeMessage(15, serverBuffList_.get(i));
    }
    if (getTeamResonanceListList().size() > 0) {
      output.writeUInt32NoTag(130);
      output.writeUInt32NoTag(teamResonanceListMemoizedSerializedSize);
    }
    for (int i = 0; i < teamResonanceList_.size(); i++) {
      output.writeUInt32NoTag(teamResonanceList_.getInt(i));
    }
    if (wearingFlycloakId_ != 0) {
      output.writeUInt32(17, wearingFlycloakId_);
    }
    if (bornTime_ != 0) {
      output.writeUInt32(18, bornTime_);
    }
    if (costumeId_ != 0) {
      output.writeUInt32(19, costumeId_);
    }
    if (kFNKGCDHMJK_ != null) {
      output.writeMessage(20, getKFNKGCDHMJK());
    }
    if (excelInfo_ != null) {
      output.writeMessage(21, getExcelInfo());
    }
    if (animHash_ != 0) {
      output.writeUInt32(22, animHash_);
    }
    if (traceEffectId_ != 0) {
      output.writeUInt32(23, traceEffectId_);
    }
    unknownFields.writeTo(output);
  }

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

    size = 0;
    if (uid_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(1, uid_);
    }
    if (avatarId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(2, avatarId_);
    }
    if (guid_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt64Size(3, guid_);
    }
    if (peerId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(4, peerId_);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < mLKDDNGAMMO_.size(); i++) {
        dataSize += com.google.protobuf.CodedOutputStream
          .computeUInt32SizeNoTag(mLKDDNGAMMO_.getInt(i));
      }
      size += dataSize;
      if (!getMLKDDNGAMMOList().isEmpty()) {
        size += 1;
        size += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(dataSize);
      }
      mLKDDNGAMMOMemoizedSerializedSize = dataSize;
    }
    if (skillDepotId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(6, skillDepotId_);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < talentIdList_.size(); i++) {
        dataSize += com.google.protobuf.CodedOutputStream
          .computeUInt32SizeNoTag(talentIdList_.getInt(i));
      }
      size += dataSize;
      if (!getTalentIdListList().isEmpty()) {
        size += 1;
        size += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(dataSize);
      }
      talentIdListMemoizedSerializedSize = dataSize;
    }
    if (weapon_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(8, getWeapon());
    }
    for (int i = 0; i < pBGDCGODOKP_.size(); i++) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(9, pBGDCGODOKP_.get(i));
    }
    if (coreProudSkillLevel_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(11, coreProudSkillLevel_);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < inherentProudSkillList_.size(); i++) {
        dataSize += com.google.protobuf.CodedOutputStream
          .computeUInt32SizeNoTag(inherentProudSkillList_.getInt(i));
      }
      size += dataSize;
      if (!getInherentProudSkillListList().isEmpty()) {
        size += 1;
        size += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(dataSize);
      }
      inherentProudSkillListMemoizedSerializedSize = dataSize;
    }
    for (java.util.Map.Entry<java.lang.Integer, java.lang.Integer> entry
         : internalGetSkillLevelMap().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.Integer, java.lang.Integer>
      skillLevelMap__ = SkillLevelMapDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(13, skillLevelMap__);
    }
    for (java.util.Map.Entry<java.lang.Integer, java.lang.Integer> entry
         : internalGetProudSkillExtraLevelMap().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.Integer, java.lang.Integer>
      proudSkillExtraLevelMap__ = ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(14, proudSkillExtraLevelMap__);
    }
    for (int i = 0; i < serverBuffList_.size(); i++) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(15, serverBuffList_.get(i));
    }
    {
      int dataSize = 0;
      for (int i = 0; i < teamResonanceList_.size(); i++) {
        dataSize += com.google.protobuf.CodedOutputStream
          .computeUInt32SizeNoTag(teamResonanceList_.getInt(i));
      }
      size += dataSize;
      if (!getTeamResonanceListList().isEmpty()) {
        size += 2;
        size += com.google.protobuf.CodedOutputStream
            .computeInt32SizeNoTag(dataSize);
      }
      teamResonanceListMemoizedSerializedSize = dataSize;
    }
    if (wearingFlycloakId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(17, wearingFlycloakId_);
    }
    if (bornTime_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(18, bornTime_);
    }
    if (costumeId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(19, costumeId_);
    }
    if (kFNKGCDHMJK_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(20, getKFNKGCDHMJK());
    }
    if (excelInfo_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(21, getExcelInfo());
    }
    if (animHash_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(22, animHash_);
    }
    if (traceEffectId_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(23, traceEffectId_);
    }
    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 io.grasscutter.net.proto.define.NAPNKPIHEBF)) {
      return super.equals(obj);
    }
    io.grasscutter.net.proto.define.NAPNKPIHEBF other = (io.grasscutter.net.proto.define.NAPNKPIHEBF) obj;

    if (!getPBGDCGODOKPList()
        .equals(other.getPBGDCGODOKPList())) return false;
    if (!internalGetSkillLevelMap().equals(
        other.internalGetSkillLevelMap())) return false;
    if (!getMLKDDNGAMMOList()
        .equals(other.getMLKDDNGAMMOList())) return false;
    if (!getTalentIdListList()
        .equals(other.getTalentIdListList())) return false;
    if (!getServerBuffListList()
        .equals(other.getServerBuffListList())) return false;
    if (!internalGetProudSkillExtraLevelMap().equals(
        other.internalGetProudSkillExtraLevelMap())) return false;
    if (hasExcelInfo() != other.hasExcelInfo()) return false;
    if (hasExcelInfo()) {
      if (!getExcelInfo()
          .equals(other.getExcelInfo())) return false;
    }
    if (!getTeamResonanceListList()
        .equals(other.getTeamResonanceListList())) return false;
    if (hasWeapon() != other.hasWeapon()) return false;
    if (hasWeapon()) {
      if (!getWeapon()
          .equals(other.getWeapon())) return false;
    }
    if (hasKFNKGCDHMJK() != other.hasKFNKGCDHMJK()) return false;
    if (hasKFNKGCDHMJK()) {
      if (!getKFNKGCDHMJK()
          .equals(other.getKFNKGCDHMJK())) return false;
    }
    if (!getInherentProudSkillListList()
        .equals(other.getInherentProudSkillListList())) return false;
    if (getUid()
        != other.getUid()) return false;
    if (getTraceEffectId()
        != other.getTraceEffectId()) return false;
    if (getAnimHash()
        != other.getAnimHash()) return false;
    if (getAvatarId()
        != other.getAvatarId()) return false;
    if (getGuid()
        != other.getGuid()) return false;
    if (getCoreProudSkillLevel()
        != other.getCoreProudSkillLevel()) return false;
    if (getCostumeId()
        != other.getCostumeId()) return false;
    if (getPeerId()
        != other.getPeerId()) return false;
    if (getSkillDepotId()
        != other.getSkillDepotId()) return false;
    if (getBornTime()
        != other.getBornTime()) return false;
    if (getWearingFlycloakId()
        != other.getWearingFlycloakId()) 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 (getPBGDCGODOKPCount() > 0) {
      hash = (37 * hash) + PBGDCGODOKP_FIELD_NUMBER;
      hash = (53 * hash) + getPBGDCGODOKPList().hashCode();
    }
    if (!internalGetSkillLevelMap().getMap().isEmpty()) {
      hash = (37 * hash) + SKILL_LEVEL_MAP_FIELD_NUMBER;
      hash = (53 * hash) + internalGetSkillLevelMap().hashCode();
    }
    if (getMLKDDNGAMMOCount() > 0) {
      hash = (37 * hash) + MLKDDNGAMMO_FIELD_NUMBER;
      hash = (53 * hash) + getMLKDDNGAMMOList().hashCode();
    }
    if (getTalentIdListCount() > 0) {
      hash = (37 * hash) + TALENT_ID_LIST_FIELD_NUMBER;
      hash = (53 * hash) + getTalentIdListList().hashCode();
    }
    if (getServerBuffListCount() > 0) {
      hash = (37 * hash) + SERVER_BUFF_LIST_FIELD_NUMBER;
      hash = (53 * hash) + getServerBuffListList().hashCode();
    }
    if (!internalGetProudSkillExtraLevelMap().getMap().isEmpty()) {
      hash = (37 * hash) + PROUD_SKILL_EXTRA_LEVEL_MAP_FIELD_NUMBER;
      hash = (53 * hash) + internalGetProudSkillExtraLevelMap().hashCode();
    }
    if (hasExcelInfo()) {
      hash = (37 * hash) + EXCEL_INFO_FIELD_NUMBER;
      hash = (53 * hash) + getExcelInfo().hashCode();
    }
    if (getTeamResonanceListCount() > 0) {
      hash = (37 * hash) + TEAM_RESONANCE_LIST_FIELD_NUMBER;
      hash = (53 * hash) + getTeamResonanceListList().hashCode();
    }
    if (hasWeapon()) {
      hash = (37 * hash) + WEAPON_FIELD_NUMBER;
      hash = (53 * hash) + getWeapon().hashCode();
    }
    if (hasKFNKGCDHMJK()) {
      hash = (37 * hash) + KFNKGCDHMJK_FIELD_NUMBER;
      hash = (53 * hash) + getKFNKGCDHMJK().hashCode();
    }
    if (getInherentProudSkillListCount() > 0) {
      hash = (37 * hash) + INHERENT_PROUD_SKILL_LIST_FIELD_NUMBER;
      hash = (53 * hash) + getInherentProudSkillListList().hashCode();
    }
    hash = (37 * hash) + UID_FIELD_NUMBER;
    hash = (53 * hash) + getUid();
    hash = (37 * hash) + TRACE_EFFECT_ID_FIELD_NUMBER;
    hash = (53 * hash) + getTraceEffectId();
    hash = (37 * hash) + ANIM_HASH_FIELD_NUMBER;
    hash = (53 * hash) + getAnimHash();
    hash = (37 * hash) + AVATAR_ID_FIELD_NUMBER;
    hash = (53 * hash) + getAvatarId();
    hash = (37 * hash) + GUID_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getGuid());
    hash = (37 * hash) + CORE_PROUD_SKILL_LEVEL_FIELD_NUMBER;
    hash = (53 * hash) + getCoreProudSkillLevel();
    hash = (37 * hash) + COSTUME_ID_FIELD_NUMBER;
    hash = (53 * hash) + getCostumeId();
    hash = (37 * hash) + PEER_ID_FIELD_NUMBER;
    hash = (53 * hash) + getPeerId();
    hash = (37 * hash) + SKILL_DEPOT_ID_FIELD_NUMBER;
    hash = (53 * hash) + getSkillDepotId();
    hash = (37 * hash) + BORN_TIME_FIELD_NUMBER;
    hash = (53 * hash) + getBornTime();
    hash = (37 * hash) + WEARING_FLYCLOAK_ID_FIELD_NUMBER;
    hash = (53 * hash) + getWearingFlycloakId();
    hash = (29 * hash) + unknownFields.hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF 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 io.grasscutter.net.proto.define.NAPNKPIHEBF parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF 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 io.grasscutter.net.proto.define.NAPNKPIHEBF parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static io.grasscutter.net.proto.define.NAPNKPIHEBF 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(io.grasscutter.net.proto.define.NAPNKPIHEBF 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 NAPNKPIHEBF}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
      // @@protoc_insertion_point(builder_implements:NAPNKPIHEBF)
      io.grasscutter.net.proto.define.NAPNKPIHEBFOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_descriptor;
    }

    @SuppressWarnings({"rawtypes"})
    protected com.google.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 13:
          return internalGetSkillLevelMap();
        case 14:
          return internalGetProudSkillExtraLevelMap();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @SuppressWarnings({"rawtypes"})
    protected com.google.protobuf.MapField internalGetMutableMapField(
        int number) {
      switch (number) {
        case 13:
          return internalGetMutableSkillLevelMap();
        case 14:
          return internalGetMutableProudSkillExtraLevelMap();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              io.grasscutter.net.proto.define.NAPNKPIHEBF.class, io.grasscutter.net.proto.define.NAPNKPIHEBF.Builder.class);
    }

    // Construct using io.grasscutter.net.proto.define.NAPNKPIHEBF.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessageV3
              .alwaysUseFieldBuilders) {
        getPBGDCGODOKPFieldBuilder();
        getServerBuffListFieldBuilder();
      }
    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      if (pBGDCGODOKPBuilder_ == null) {
        pBGDCGODOKP_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
      } else {
        pBGDCGODOKPBuilder_.clear();
      }
      internalGetMutableSkillLevelMap().clear();
      mLKDDNGAMMO_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000004);
      talentIdList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000008);
      if (serverBuffListBuilder_ == null) {
        serverBuffList_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000010);
      } else {
        serverBuffListBuilder_.clear();
      }
      internalGetMutableProudSkillExtraLevelMap().clear();
      if (excelInfoBuilder_ == null) {
        excelInfo_ = null;
      } else {
        excelInfo_ = null;
        excelInfoBuilder_ = null;
      }
      teamResonanceList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000040);
      if (weaponBuilder_ == null) {
        weapon_ = null;
      } else {
        weapon_ = null;
        weaponBuilder_ = null;
      }
      if (kFNKGCDHMJKBuilder_ == null) {
        kFNKGCDHMJK_ = null;
      } else {
        kFNKGCDHMJK_ = null;
        kFNKGCDHMJKBuilder_ = null;
      }
      inherentProudSkillList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000080);
      uid_ = 0;

      traceEffectId_ = 0;

      animHash_ = 0;

      avatarId_ = 0;

      guid_ = 0L;

      coreProudSkillLevel_ = 0;

      costumeId_ = 0;

      peerId_ = 0;

      skillDepotId_ = 0;

      bornTime_ = 0;

      wearingFlycloakId_ = 0;

      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return io.grasscutter.net.proto.define.Define.internal_static_NAPNKPIHEBF_descriptor;
    }

    @java.lang.Override
    public io.grasscutter.net.proto.define.NAPNKPIHEBF getDefaultInstanceForType() {
      return io.grasscutter.net.proto.define.NAPNKPIHEBF.getDefaultInstance();
    }

    @java.lang.Override
    public io.grasscutter.net.proto.define.NAPNKPIHEBF build() {
      io.grasscutter.net.proto.define.NAPNKPIHEBF result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public io.grasscutter.net.proto.define.NAPNKPIHEBF buildPartial() {
      io.grasscutter.net.proto.define.NAPNKPIHEBF result = new io.grasscutter.net.proto.define.NAPNKPIHEBF(this);
      int from_bitField0_ = bitField0_;
      if (pBGDCGODOKPBuilder_ == null) {
        if (((bitField0_ & 0x00000001) != 0)) {
          pBGDCGODOKP_ = java.util.Collections.unmodifiableList(pBGDCGODOKP_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.pBGDCGODOKP_ = pBGDCGODOKP_;
      } else {
        result.pBGDCGODOKP_ = pBGDCGODOKPBuilder_.build();
      }
      result.skillLevelMap_ = internalGetSkillLevelMap();
      result.skillLevelMap_.makeImmutable();
      if (((bitField0_ & 0x00000004) != 0)) {
        mLKDDNGAMMO_.makeImmutable();
        bitField0_ = (bitField0_ & ~0x00000004);
      }
      result.mLKDDNGAMMO_ = mLKDDNGAMMO_;
      if (((bitField0_ & 0x00000008) != 0)) {
        talentIdList_.makeImmutable();
        bitField0_ = (bitField0_ & ~0x00000008);
      }
      result.talentIdList_ = talentIdList_;
      if (serverBuffListBuilder_ == null) {
        if (((bitField0_ & 0x00000010) != 0)) {
          serverBuffList_ = java.util.Collections.unmodifiableList(serverBuffList_);
          bitField0_ = (bitField0_ & ~0x00000010);
        }
        result.serverBuffList_ = serverBuffList_;
      } else {
        result.serverBuffList_ = serverBuffListBuilder_.build();
      }
      result.proudSkillExtraLevelMap_ = internalGetProudSkillExtraLevelMap();
      result.proudSkillExtraLevelMap_.makeImmutable();
      if (excelInfoBuilder_ == null) {
        result.excelInfo_ = excelInfo_;
      } else {
        result.excelInfo_ = excelInfoBuilder_.build();
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        teamResonanceList_.makeImmutable();
        bitField0_ = (bitField0_ & ~0x00000040);
      }
      result.teamResonanceList_ = teamResonanceList_;
      if (weaponBuilder_ == null) {
        result.weapon_ = weapon_;
      } else {
        result.weapon_ = weaponBuilder_.build();
      }
      if (kFNKGCDHMJKBuilder_ == null) {
        result.kFNKGCDHMJK_ = kFNKGCDHMJK_;
      } else {
        result.kFNKGCDHMJK_ = kFNKGCDHMJKBuilder_.build();
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        inherentProudSkillList_.makeImmutable();
        bitField0_ = (bitField0_ & ~0x00000080);
      }
      result.inherentProudSkillList_ = inherentProudSkillList_;
      result.uid_ = uid_;
      result.traceEffectId_ = traceEffectId_;
      result.animHash_ = animHash_;
      result.avatarId_ = avatarId_;
      result.guid_ = guid_;
      result.coreProudSkillLevel_ = coreProudSkillLevel_;
      result.costumeId_ = costumeId_;
      result.peerId_ = peerId_;
      result.skillDepotId_ = skillDepotId_;
      result.bornTime_ = bornTime_;
      result.wearingFlycloakId_ = wearingFlycloakId_;
      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 io.grasscutter.net.proto.define.NAPNKPIHEBF) {
        return mergeFrom((io.grasscutter.net.proto.define.NAPNKPIHEBF)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(io.grasscutter.net.proto.define.NAPNKPIHEBF other) {
      if (other == io.grasscutter.net.proto.define.NAPNKPIHEBF.getDefaultInstance()) return this;
      if (pBGDCGODOKPBuilder_ == null) {
        if (!other.pBGDCGODOKP_.isEmpty()) {
          if (pBGDCGODOKP_.isEmpty()) {
            pBGDCGODOKP_ = other.pBGDCGODOKP_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensurePBGDCGODOKPIsMutable();
            pBGDCGODOKP_.addAll(other.pBGDCGODOKP_);
          }
          onChanged();
        }
      } else {
        if (!other.pBGDCGODOKP_.isEmpty()) {
          if (pBGDCGODOKPBuilder_.isEmpty()) {
            pBGDCGODOKPBuilder_.dispose();
            pBGDCGODOKPBuilder_ = null;
            pBGDCGODOKP_ = other.pBGDCGODOKP_;
            bitField0_ = (bitField0_ & ~0x00000001);
            pBGDCGODOKPBuilder_ = 
              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                 getPBGDCGODOKPFieldBuilder() : null;
          } else {
            pBGDCGODOKPBuilder_.addAllMessages(other.pBGDCGODOKP_);
          }
        }
      }
      internalGetMutableSkillLevelMap().mergeFrom(
          other.internalGetSkillLevelMap());
      if (!other.mLKDDNGAMMO_.isEmpty()) {
        if (mLKDDNGAMMO_.isEmpty()) {
          mLKDDNGAMMO_ = other.mLKDDNGAMMO_;
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          ensureMLKDDNGAMMOIsMutable();
          mLKDDNGAMMO_.addAll(other.mLKDDNGAMMO_);
        }
        onChanged();
      }
      if (!other.talentIdList_.isEmpty()) {
        if (talentIdList_.isEmpty()) {
          talentIdList_ = other.talentIdList_;
          bitField0_ = (bitField0_ & ~0x00000008);
        } else {
          ensureTalentIdListIsMutable();
          talentIdList_.addAll(other.talentIdList_);
        }
        onChanged();
      }
      if (serverBuffListBuilder_ == null) {
        if (!other.serverBuffList_.isEmpty()) {
          if (serverBuffList_.isEmpty()) {
            serverBuffList_ = other.serverBuffList_;
            bitField0_ = (bitField0_ & ~0x00000010);
          } else {
            ensureServerBuffListIsMutable();
            serverBuffList_.addAll(other.serverBuffList_);
          }
          onChanged();
        }
      } else {
        if (!other.serverBuffList_.isEmpty()) {
          if (serverBuffListBuilder_.isEmpty()) {
            serverBuffListBuilder_.dispose();
            serverBuffListBuilder_ = null;
            serverBuffList_ = other.serverBuffList_;
            bitField0_ = (bitField0_ & ~0x00000010);
            serverBuffListBuilder_ = 
              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                 getServerBuffListFieldBuilder() : null;
          } else {
            serverBuffListBuilder_.addAllMessages(other.serverBuffList_);
          }
        }
      }
      internalGetMutableProudSkillExtraLevelMap().mergeFrom(
          other.internalGetProudSkillExtraLevelMap());
      if (other.hasExcelInfo()) {
        mergeExcelInfo(other.getExcelInfo());
      }
      if (!other.teamResonanceList_.isEmpty()) {
        if (teamResonanceList_.isEmpty()) {
          teamResonanceList_ = other.teamResonanceList_;
          bitField0_ = (bitField0_ & ~0x00000040);
        } else {
          ensureTeamResonanceListIsMutable();
          teamResonanceList_.addAll(other.teamResonanceList_);
        }
        onChanged();
      }
      if (other.hasWeapon()) {
        mergeWeapon(other.getWeapon());
      }
      if (other.hasKFNKGCDHMJK()) {
        mergeKFNKGCDHMJK(other.getKFNKGCDHMJK());
      }
      if (!other.inherentProudSkillList_.isEmpty()) {
        if (inherentProudSkillList_.isEmpty()) {
          inherentProudSkillList_ = other.inherentProudSkillList_;
          bitField0_ = (bitField0_ & ~0x00000080);
        } else {
          ensureInherentProudSkillListIsMutable();
          inherentProudSkillList_.addAll(other.inherentProudSkillList_);
        }
        onChanged();
      }
      if (other.getUid() != 0) {
        setUid(other.getUid());
      }
      if (other.getTraceEffectId() != 0) {
        setTraceEffectId(other.getTraceEffectId());
      }
      if (other.getAnimHash() != 0) {
        setAnimHash(other.getAnimHash());
      }
      if (other.getAvatarId() != 0) {
        setAvatarId(other.getAvatarId());
      }
      if (other.getGuid() != 0L) {
        setGuid(other.getGuid());
      }
      if (other.getCoreProudSkillLevel() != 0) {
        setCoreProudSkillLevel(other.getCoreProudSkillLevel());
      }
      if (other.getCostumeId() != 0) {
        setCostumeId(other.getCostumeId());
      }
      if (other.getPeerId() != 0) {
        setPeerId(other.getPeerId());
      }
      if (other.getSkillDepotId() != 0) {
        setSkillDepotId(other.getSkillDepotId());
      }
      if (other.getBornTime() != 0) {
        setBornTime(other.getBornTime());
      }
      if (other.getWearingFlycloakId() != 0) {
        setWearingFlycloakId(other.getWearingFlycloakId());
      }
      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 {
      io.grasscutter.net.proto.define.NAPNKPIHEBF parsedMessage = null;
      try {
        parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        parsedMessage = (io.grasscutter.net.proto.define.NAPNKPIHEBF) e.getUnfinishedMessage();
        throw e.unwrapIOException();
      } finally {
        if (parsedMessage != null) {
          mergeFrom(parsedMessage);
        }
      }
      return this;
    }
    private int bitField0_;

    private java.util.List<io.grasscutter.net.proto.define.SceneReliquaryInfo> pBGDCGODOKP_ =
      java.util.Collections.emptyList();
    private void ensurePBGDCGODOKPIsMutable() {
      if (!((bitField0_ & 0x00000001) != 0)) {
        pBGDCGODOKP_ = new java.util.ArrayList<io.grasscutter.net.proto.define.SceneReliquaryInfo>(pBGDCGODOKP_);
        bitField0_ |= 0x00000001;
       }
    }

    private com.google.protobuf.RepeatedFieldBuilderV3<
        io.grasscutter.net.proto.define.SceneReliquaryInfo, io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder, io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder> pBGDCGODOKPBuilder_;

    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public java.util.List<io.grasscutter.net.proto.define.SceneReliquaryInfo> getPBGDCGODOKPList() {
      if (pBGDCGODOKPBuilder_ == null) {
        return java.util.Collections.unmodifiableList(pBGDCGODOKP_);
      } else {
        return pBGDCGODOKPBuilder_.getMessageList();
      }
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public int getPBGDCGODOKPCount() {
      if (pBGDCGODOKPBuilder_ == null) {
        return pBGDCGODOKP_.size();
      } else {
        return pBGDCGODOKPBuilder_.getCount();
      }
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public io.grasscutter.net.proto.define.SceneReliquaryInfo getPBGDCGODOKP(int index) {
      if (pBGDCGODOKPBuilder_ == null) {
        return pBGDCGODOKP_.get(index);
      } else {
        return pBGDCGODOKPBuilder_.getMessage(index);
      }
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder setPBGDCGODOKP(
        int index, io.grasscutter.net.proto.define.SceneReliquaryInfo value) {
      if (pBGDCGODOKPBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.set(index, value);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.setMessage(index, value);
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder setPBGDCGODOKP(
        int index, io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder builderForValue) {
      if (pBGDCGODOKPBuilder_ == null) {
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.set(index, builderForValue.build());
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.setMessage(index, builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder addPBGDCGODOKP(io.grasscutter.net.proto.define.SceneReliquaryInfo value) {
      if (pBGDCGODOKPBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.add(value);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.addMessage(value);
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder addPBGDCGODOKP(
        int index, io.grasscutter.net.proto.define.SceneReliquaryInfo value) {
      if (pBGDCGODOKPBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.add(index, value);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.addMessage(index, value);
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder addPBGDCGODOKP(
        io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder builderForValue) {
      if (pBGDCGODOKPBuilder_ == null) {
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.add(builderForValue.build());
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.addMessage(builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder addPBGDCGODOKP(
        int index, io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder builderForValue) {
      if (pBGDCGODOKPBuilder_ == null) {
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.add(index, builderForValue.build());
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.addMessage(index, builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder addAllPBGDCGODOKP(
        java.lang.Iterable<? extends io.grasscutter.net.proto.define.SceneReliquaryInfo> values) {
      if (pBGDCGODOKPBuilder_ == null) {
        ensurePBGDCGODOKPIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, pBGDCGODOKP_);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.addAllMessages(values);
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder clearPBGDCGODOKP() {
      if (pBGDCGODOKPBuilder_ == null) {
        pBGDCGODOKP_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.clear();
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public Builder removePBGDCGODOKP(int index) {
      if (pBGDCGODOKPBuilder_ == null) {
        ensurePBGDCGODOKPIsMutable();
        pBGDCGODOKP_.remove(index);
        onChanged();
      } else {
        pBGDCGODOKPBuilder_.remove(index);
      }
      return this;
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder getPBGDCGODOKPBuilder(
        int index) {
      return getPBGDCGODOKPFieldBuilder().getBuilder(index);
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder getPBGDCGODOKPOrBuilder(
        int index) {
      if (pBGDCGODOKPBuilder_ == null) {
        return pBGDCGODOKP_.get(index);  } else {
        return pBGDCGODOKPBuilder_.getMessageOrBuilder(index);
      }
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public java.util.List<? extends io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder> 
         getPBGDCGODOKPOrBuilderList() {
      if (pBGDCGODOKPBuilder_ != null) {
        return pBGDCGODOKPBuilder_.getMessageOrBuilderList();
      } else {
        return java.util.Collections.unmodifiableList(pBGDCGODOKP_);
      }
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder addPBGDCGODOKPBuilder() {
      return getPBGDCGODOKPFieldBuilder().addBuilder(
          io.grasscutter.net.proto.define.SceneReliquaryInfo.getDefaultInstance());
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder addPBGDCGODOKPBuilder(
        int index) {
      return getPBGDCGODOKPFieldBuilder().addBuilder(
          index, io.grasscutter.net.proto.define.SceneReliquaryInfo.getDefaultInstance());
    }
    /**
     * <code>repeated .SceneReliquaryInfo PBGDCGODOKP = 9;</code>
     */
    public java.util.List<io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder> 
         getPBGDCGODOKPBuilderList() {
      return getPBGDCGODOKPFieldBuilder().getBuilderList();
    }
    private com.google.protobuf.RepeatedFieldBuilderV3<
        io.grasscutter.net.proto.define.SceneReliquaryInfo, io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder, io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder> 
        getPBGDCGODOKPFieldBuilder() {
      if (pBGDCGODOKPBuilder_ == null) {
        pBGDCGODOKPBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
            io.grasscutter.net.proto.define.SceneReliquaryInfo, io.grasscutter.net.proto.define.SceneReliquaryInfo.Builder, io.grasscutter.net.proto.define.SceneReliquaryInfoOrBuilder>(
                pBGDCGODOKP_,
                ((bitField0_ & 0x00000001) != 0),
                getParentForChildren(),
                isClean());
        pBGDCGODOKP_ = null;
      }
      return pBGDCGODOKPBuilder_;
    }

    private com.google.protobuf.MapField<
        java.lang.Integer, java.lang.Integer> skillLevelMap_;
    private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
    internalGetSkillLevelMap() {
      if (skillLevelMap_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            SkillLevelMapDefaultEntryHolder.defaultEntry);
      }
      return skillLevelMap_;
    }
    private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
    internalGetMutableSkillLevelMap() {
      onChanged();;
      if (skillLevelMap_ == null) {
        skillLevelMap_ = com.google.protobuf.MapField.newMapField(
            SkillLevelMapDefaultEntryHolder.defaultEntry);
      }
      if (!skillLevelMap_.isMutable()) {
        skillLevelMap_ = skillLevelMap_.copy();
      }
      return skillLevelMap_;
    }

    public int getSkillLevelMapCount() {
      return internalGetSkillLevelMap().getMap().size();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */

    @java.lang.Override
    public boolean containsSkillLevelMap(
        int key) {
      
      return internalGetSkillLevelMap().getMap().containsKey(key);
    }
    /**
     * Use {@link #getSkillLevelMapMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, java.lang.Integer> getSkillLevelMap() {
      return getSkillLevelMapMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */
    @java.lang.Override

    public java.util.Map<java.lang.Integer, java.lang.Integer> getSkillLevelMapMap() {
      return internalGetSkillLevelMap().getMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */
    @java.lang.Override

    public int getSkillLevelMapOrDefault(
        int key,
        int defaultValue) {
      
      java.util.Map<java.lang.Integer, java.lang.Integer> map =
          internalGetSkillLevelMap().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */
    @java.lang.Override

    public int getSkillLevelMapOrThrow(
        int key) {
      
      java.util.Map<java.lang.Integer, java.lang.Integer> map =
          internalGetSkillLevelMap().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }

    public Builder clearSkillLevelMap() {
      internalGetMutableSkillLevelMap().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */

    public Builder removeSkillLevelMap(
        int key) {
      
      internalGetMutableSkillLevelMap().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, java.lang.Integer>
    getMutableSkillLevelMap() {
      return internalGetMutableSkillLevelMap().getMutableMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */
    public Builder putSkillLevelMap(
        int key,
        int value) {
      
      
      internalGetMutableSkillLevelMap().getMutableMap()
          .put(key, value);
      return this;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; skill_level_map = 13;</code>
     */

    public Builder putAllSkillLevelMap(
        java.util.Map<java.lang.Integer, java.lang.Integer> values) {
      internalGetMutableSkillLevelMap().getMutableMap()
          .putAll(values);
      return this;
    }

    private com.google.protobuf.Internal.IntList mLKDDNGAMMO_ = emptyIntList();
    private void ensureMLKDDNGAMMOIsMutable() {
      if (!((bitField0_ & 0x00000004) != 0)) {
        mLKDDNGAMMO_ = mutableCopy(mLKDDNGAMMO_);
        bitField0_ |= 0x00000004;
       }
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @return A list containing the mLKDDNGAMMO.
     */
    public java.util.List<java.lang.Integer>
        getMLKDDNGAMMOList() {
      return ((bitField0_ & 0x00000004) != 0) ?
               java.util.Collections.unmodifiableList(mLKDDNGAMMO_) : mLKDDNGAMMO_;
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @return The count of mLKDDNGAMMO.
     */
    public int getMLKDDNGAMMOCount() {
      return mLKDDNGAMMO_.size();
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @param index The index of the element to return.
     * @return The mLKDDNGAMMO at the given index.
     */
    public int getMLKDDNGAMMO(int index) {
      return mLKDDNGAMMO_.getInt(index);
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @param index The index to set the value at.
     * @param value The mLKDDNGAMMO to set.
     * @return This builder for chaining.
     */
    public Builder setMLKDDNGAMMO(
        int index, int value) {
      ensureMLKDDNGAMMOIsMutable();
      mLKDDNGAMMO_.setInt(index, value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @param value The mLKDDNGAMMO to add.
     * @return This builder for chaining.
     */
    public Builder addMLKDDNGAMMO(int value) {
      ensureMLKDDNGAMMOIsMutable();
      mLKDDNGAMMO_.addInt(value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @param values The mLKDDNGAMMO to add.
     * @return This builder for chaining.
     */
    public Builder addAllMLKDDNGAMMO(
        java.lang.Iterable<? extends java.lang.Integer> values) {
      ensureMLKDDNGAMMOIsMutable();
      com.google.protobuf.AbstractMessageLite.Builder.addAll(
          values, mLKDDNGAMMO_);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 MLKDDNGAMMO = 5;</code>
     * @return This builder for chaining.
     */
    public Builder clearMLKDDNGAMMO() {
      mLKDDNGAMMO_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000004);
      onChanged();
      return this;
    }

    private com.google.protobuf.Internal.IntList talentIdList_ = emptyIntList();
    private void ensureTalentIdListIsMutable() {
      if (!((bitField0_ & 0x00000008) != 0)) {
        talentIdList_ = mutableCopy(talentIdList_);
        bitField0_ |= 0x00000008;
       }
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @return A list containing the talentIdList.
     */
    public java.util.List<java.lang.Integer>
        getTalentIdListList() {
      return ((bitField0_ & 0x00000008) != 0) ?
               java.util.Collections.unmodifiableList(talentIdList_) : talentIdList_;
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @return The count of talentIdList.
     */
    public int getTalentIdListCount() {
      return talentIdList_.size();
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @param index The index of the element to return.
     * @return The talentIdList at the given index.
     */
    public int getTalentIdList(int index) {
      return talentIdList_.getInt(index);
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @param index The index to set the value at.
     * @param value The talentIdList to set.
     * @return This builder for chaining.
     */
    public Builder setTalentIdList(
        int index, int value) {
      ensureTalentIdListIsMutable();
      talentIdList_.setInt(index, value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @param value The talentIdList to add.
     * @return This builder for chaining.
     */
    public Builder addTalentIdList(int value) {
      ensureTalentIdListIsMutable();
      talentIdList_.addInt(value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @param values The talentIdList to add.
     * @return This builder for chaining.
     */
    public Builder addAllTalentIdList(
        java.lang.Iterable<? extends java.lang.Integer> values) {
      ensureTalentIdListIsMutable();
      com.google.protobuf.AbstractMessageLite.Builder.addAll(
          values, talentIdList_);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 talent_id_list = 7;</code>
     * @return This builder for chaining.
     */
    public Builder clearTalentIdList() {
      talentIdList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000008);
      onChanged();
      return this;
    }

    private java.util.List<io.grasscutter.net.proto.define.ServerBuff> serverBuffList_ =
      java.util.Collections.emptyList();
    private void ensureServerBuffListIsMutable() {
      if (!((bitField0_ & 0x00000010) != 0)) {
        serverBuffList_ = new java.util.ArrayList<io.grasscutter.net.proto.define.ServerBuff>(serverBuffList_);
        bitField0_ |= 0x00000010;
       }
    }

    private com.google.protobuf.RepeatedFieldBuilderV3<
        io.grasscutter.net.proto.define.ServerBuff, io.grasscutter.net.proto.define.ServerBuff.Builder, io.grasscutter.net.proto.define.ServerBuffOrBuilder> serverBuffListBuilder_;

    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public java.util.List<io.grasscutter.net.proto.define.ServerBuff> getServerBuffListList() {
      if (serverBuffListBuilder_ == null) {
        return java.util.Collections.unmodifiableList(serverBuffList_);
      } else {
        return serverBuffListBuilder_.getMessageList();
      }
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public int getServerBuffListCount() {
      if (serverBuffListBuilder_ == null) {
        return serverBuffList_.size();
      } else {
        return serverBuffListBuilder_.getCount();
      }
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public io.grasscutter.net.proto.define.ServerBuff getServerBuffList(int index) {
      if (serverBuffListBuilder_ == null) {
        return serverBuffList_.get(index);
      } else {
        return serverBuffListBuilder_.getMessage(index);
      }
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder setServerBuffList(
        int index, io.grasscutter.net.proto.define.ServerBuff value) {
      if (serverBuffListBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensureServerBuffListIsMutable();
        serverBuffList_.set(index, value);
        onChanged();
      } else {
        serverBuffListBuilder_.setMessage(index, value);
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder setServerBuffList(
        int index, io.grasscutter.net.proto.define.ServerBuff.Builder builderForValue) {
      if (serverBuffListBuilder_ == null) {
        ensureServerBuffListIsMutable();
        serverBuffList_.set(index, builderForValue.build());
        onChanged();
      } else {
        serverBuffListBuilder_.setMessage(index, builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder addServerBuffList(io.grasscutter.net.proto.define.ServerBuff value) {
      if (serverBuffListBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensureServerBuffListIsMutable();
        serverBuffList_.add(value);
        onChanged();
      } else {
        serverBuffListBuilder_.addMessage(value);
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder addServerBuffList(
        int index, io.grasscutter.net.proto.define.ServerBuff value) {
      if (serverBuffListBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ensureServerBuffListIsMutable();
        serverBuffList_.add(index, value);
        onChanged();
      } else {
        serverBuffListBuilder_.addMessage(index, value);
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder addServerBuffList(
        io.grasscutter.net.proto.define.ServerBuff.Builder builderForValue) {
      if (serverBuffListBuilder_ == null) {
        ensureServerBuffListIsMutable();
        serverBuffList_.add(builderForValue.build());
        onChanged();
      } else {
        serverBuffListBuilder_.addMessage(builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder addServerBuffList(
        int index, io.grasscutter.net.proto.define.ServerBuff.Builder builderForValue) {
      if (serverBuffListBuilder_ == null) {
        ensureServerBuffListIsMutable();
        serverBuffList_.add(index, builderForValue.build());
        onChanged();
      } else {
        serverBuffListBuilder_.addMessage(index, builderForValue.build());
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder addAllServerBuffList(
        java.lang.Iterable<? extends io.grasscutter.net.proto.define.ServerBuff> values) {
      if (serverBuffListBuilder_ == null) {
        ensureServerBuffListIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, serverBuffList_);
        onChanged();
      } else {
        serverBuffListBuilder_.addAllMessages(values);
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder clearServerBuffList() {
      if (serverBuffListBuilder_ == null) {
        serverBuffList_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000010);
        onChanged();
      } else {
        serverBuffListBuilder_.clear();
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public Builder removeServerBuffList(int index) {
      if (serverBuffListBuilder_ == null) {
        ensureServerBuffListIsMutable();
        serverBuffList_.remove(index);
        onChanged();
      } else {
        serverBuffListBuilder_.remove(index);
      }
      return this;
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public io.grasscutter.net.proto.define.ServerBuff.Builder getServerBuffListBuilder(
        int index) {
      return getServerBuffListFieldBuilder().getBuilder(index);
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public io.grasscutter.net.proto.define.ServerBuffOrBuilder getServerBuffListOrBuilder(
        int index) {
      if (serverBuffListBuilder_ == null) {
        return serverBuffList_.get(index);  } else {
        return serverBuffListBuilder_.getMessageOrBuilder(index);
      }
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public java.util.List<? extends io.grasscutter.net.proto.define.ServerBuffOrBuilder> 
         getServerBuffListOrBuilderList() {
      if (serverBuffListBuilder_ != null) {
        return serverBuffListBuilder_.getMessageOrBuilderList();
      } else {
        return java.util.Collections.unmodifiableList(serverBuffList_);
      }
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public io.grasscutter.net.proto.define.ServerBuff.Builder addServerBuffListBuilder() {
      return getServerBuffListFieldBuilder().addBuilder(
          io.grasscutter.net.proto.define.ServerBuff.getDefaultInstance());
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public io.grasscutter.net.proto.define.ServerBuff.Builder addServerBuffListBuilder(
        int index) {
      return getServerBuffListFieldBuilder().addBuilder(
          index, io.grasscutter.net.proto.define.ServerBuff.getDefaultInstance());
    }
    /**
     * <code>repeated .ServerBuff server_buff_list = 15;</code>
     */
    public java.util.List<io.grasscutter.net.proto.define.ServerBuff.Builder> 
         getServerBuffListBuilderList() {
      return getServerBuffListFieldBuilder().getBuilderList();
    }
    private com.google.protobuf.RepeatedFieldBuilderV3<
        io.grasscutter.net.proto.define.ServerBuff, io.grasscutter.net.proto.define.ServerBuff.Builder, io.grasscutter.net.proto.define.ServerBuffOrBuilder> 
        getServerBuffListFieldBuilder() {
      if (serverBuffListBuilder_ == null) {
        serverBuffListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
            io.grasscutter.net.proto.define.ServerBuff, io.grasscutter.net.proto.define.ServerBuff.Builder, io.grasscutter.net.proto.define.ServerBuffOrBuilder>(
                serverBuffList_,
                ((bitField0_ & 0x00000010) != 0),
                getParentForChildren(),
                isClean());
        serverBuffList_ = null;
      }
      return serverBuffListBuilder_;
    }

    private com.google.protobuf.MapField<
        java.lang.Integer, java.lang.Integer> proudSkillExtraLevelMap_;
    private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
    internalGetProudSkillExtraLevelMap() {
      if (proudSkillExtraLevelMap_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry);
      }
      return proudSkillExtraLevelMap_;
    }
    private com.google.protobuf.MapField<java.lang.Integer, java.lang.Integer>
    internalGetMutableProudSkillExtraLevelMap() {
      onChanged();;
      if (proudSkillExtraLevelMap_ == null) {
        proudSkillExtraLevelMap_ = com.google.protobuf.MapField.newMapField(
            ProudSkillExtraLevelMapDefaultEntryHolder.defaultEntry);
      }
      if (!proudSkillExtraLevelMap_.isMutable()) {
        proudSkillExtraLevelMap_ = proudSkillExtraLevelMap_.copy();
      }
      return proudSkillExtraLevelMap_;
    }

    public int getProudSkillExtraLevelMapCount() {
      return internalGetProudSkillExtraLevelMap().getMap().size();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */

    @java.lang.Override
    public boolean containsProudSkillExtraLevelMap(
        int key) {
      
      return internalGetProudSkillExtraLevelMap().getMap().containsKey(key);
    }
    /**
     * Use {@link #getProudSkillExtraLevelMapMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, java.lang.Integer> getProudSkillExtraLevelMap() {
      return getProudSkillExtraLevelMapMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */
    @java.lang.Override

    public java.util.Map<java.lang.Integer, java.lang.Integer> getProudSkillExtraLevelMapMap() {
      return internalGetProudSkillExtraLevelMap().getMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */
    @java.lang.Override

    public int getProudSkillExtraLevelMapOrDefault(
        int key,
        int defaultValue) {
      
      java.util.Map<java.lang.Integer, java.lang.Integer> map =
          internalGetProudSkillExtraLevelMap().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */
    @java.lang.Override

    public int getProudSkillExtraLevelMapOrThrow(
        int key) {
      
      java.util.Map<java.lang.Integer, java.lang.Integer> map =
          internalGetProudSkillExtraLevelMap().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }

    public Builder clearProudSkillExtraLevelMap() {
      internalGetMutableProudSkillExtraLevelMap().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */

    public Builder removeProudSkillExtraLevelMap(
        int key) {
      
      internalGetMutableProudSkillExtraLevelMap().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, java.lang.Integer>
    getMutableProudSkillExtraLevelMap() {
      return internalGetMutableProudSkillExtraLevelMap().getMutableMap();
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */
    public Builder putProudSkillExtraLevelMap(
        int key,
        int value) {
      
      
      internalGetMutableProudSkillExtraLevelMap().getMutableMap()
          .put(key, value);
      return this;
    }
    /**
     * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 14;</code>
     */

    public Builder putAllProudSkillExtraLevelMap(
        java.util.Map<java.lang.Integer, java.lang.Integer> values) {
      internalGetMutableProudSkillExtraLevelMap().getMutableMap()
          .putAll(values);
      return this;
    }

    private io.grasscutter.net.proto.define.AvatarExcelInfo excelInfo_;
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.AvatarExcelInfo, io.grasscutter.net.proto.define.AvatarExcelInfo.Builder, io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder> excelInfoBuilder_;
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     * @return Whether the excelInfo field is set.
     */
    public boolean hasExcelInfo() {
      return excelInfoBuilder_ != null || excelInfo_ != null;
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     * @return The excelInfo.
     */
    public io.grasscutter.net.proto.define.AvatarExcelInfo getExcelInfo() {
      if (excelInfoBuilder_ == null) {
        return excelInfo_ == null ? io.grasscutter.net.proto.define.AvatarExcelInfo.getDefaultInstance() : excelInfo_;
      } else {
        return excelInfoBuilder_.getMessage();
      }
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public Builder setExcelInfo(io.grasscutter.net.proto.define.AvatarExcelInfo value) {
      if (excelInfoBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        excelInfo_ = value;
        onChanged();
      } else {
        excelInfoBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public Builder setExcelInfo(
        io.grasscutter.net.proto.define.AvatarExcelInfo.Builder builderForValue) {
      if (excelInfoBuilder_ == null) {
        excelInfo_ = builderForValue.build();
        onChanged();
      } else {
        excelInfoBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public Builder mergeExcelInfo(io.grasscutter.net.proto.define.AvatarExcelInfo value) {
      if (excelInfoBuilder_ == null) {
        if (excelInfo_ != null) {
          excelInfo_ =
            io.grasscutter.net.proto.define.AvatarExcelInfo.newBuilder(excelInfo_).mergeFrom(value).buildPartial();
        } else {
          excelInfo_ = value;
        }
        onChanged();
      } else {
        excelInfoBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public Builder clearExcelInfo() {
      if (excelInfoBuilder_ == null) {
        excelInfo_ = null;
        onChanged();
      } else {
        excelInfo_ = null;
        excelInfoBuilder_ = null;
      }

      return this;
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public io.grasscutter.net.proto.define.AvatarExcelInfo.Builder getExcelInfoBuilder() {
      
      onChanged();
      return getExcelInfoFieldBuilder().getBuilder();
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    public io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder getExcelInfoOrBuilder() {
      if (excelInfoBuilder_ != null) {
        return excelInfoBuilder_.getMessageOrBuilder();
      } else {
        return excelInfo_ == null ?
            io.grasscutter.net.proto.define.AvatarExcelInfo.getDefaultInstance() : excelInfo_;
      }
    }
    /**
     * <code>.AvatarExcelInfo excel_info = 21;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.AvatarExcelInfo, io.grasscutter.net.proto.define.AvatarExcelInfo.Builder, io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder> 
        getExcelInfoFieldBuilder() {
      if (excelInfoBuilder_ == null) {
        excelInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            io.grasscutter.net.proto.define.AvatarExcelInfo, io.grasscutter.net.proto.define.AvatarExcelInfo.Builder, io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder>(
                getExcelInfo(),
                getParentForChildren(),
                isClean());
        excelInfo_ = null;
      }
      return excelInfoBuilder_;
    }

    private com.google.protobuf.Internal.IntList teamResonanceList_ = emptyIntList();
    private void ensureTeamResonanceListIsMutable() {
      if (!((bitField0_ & 0x00000040) != 0)) {
        teamResonanceList_ = mutableCopy(teamResonanceList_);
        bitField0_ |= 0x00000040;
       }
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @return A list containing the teamResonanceList.
     */
    public java.util.List<java.lang.Integer>
        getTeamResonanceListList() {
      return ((bitField0_ & 0x00000040) != 0) ?
               java.util.Collections.unmodifiableList(teamResonanceList_) : teamResonanceList_;
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @return The count of teamResonanceList.
     */
    public int getTeamResonanceListCount() {
      return teamResonanceList_.size();
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @param index The index of the element to return.
     * @return The teamResonanceList at the given index.
     */
    public int getTeamResonanceList(int index) {
      return teamResonanceList_.getInt(index);
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @param index The index to set the value at.
     * @param value The teamResonanceList to set.
     * @return This builder for chaining.
     */
    public Builder setTeamResonanceList(
        int index, int value) {
      ensureTeamResonanceListIsMutable();
      teamResonanceList_.setInt(index, value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @param value The teamResonanceList to add.
     * @return This builder for chaining.
     */
    public Builder addTeamResonanceList(int value) {
      ensureTeamResonanceListIsMutable();
      teamResonanceList_.addInt(value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @param values The teamResonanceList to add.
     * @return This builder for chaining.
     */
    public Builder addAllTeamResonanceList(
        java.lang.Iterable<? extends java.lang.Integer> values) {
      ensureTeamResonanceListIsMutable();
      com.google.protobuf.AbstractMessageLite.Builder.addAll(
          values, teamResonanceList_);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 team_resonance_list = 16;</code>
     * @return This builder for chaining.
     */
    public Builder clearTeamResonanceList() {
      teamResonanceList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000040);
      onChanged();
      return this;
    }

    private io.grasscutter.net.proto.define.SceneWeaponInfo weapon_;
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.SceneWeaponInfo, io.grasscutter.net.proto.define.SceneWeaponInfo.Builder, io.grasscutter.net.proto.define.SceneWeaponInfoOrBuilder> weaponBuilder_;
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     * @return Whether the weapon field is set.
     */
    public boolean hasWeapon() {
      return weaponBuilder_ != null || weapon_ != null;
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     * @return The weapon.
     */
    public io.grasscutter.net.proto.define.SceneWeaponInfo getWeapon() {
      if (weaponBuilder_ == null) {
        return weapon_ == null ? io.grasscutter.net.proto.define.SceneWeaponInfo.getDefaultInstance() : weapon_;
      } else {
        return weaponBuilder_.getMessage();
      }
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public Builder setWeapon(io.grasscutter.net.proto.define.SceneWeaponInfo value) {
      if (weaponBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        weapon_ = value;
        onChanged();
      } else {
        weaponBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public Builder setWeapon(
        io.grasscutter.net.proto.define.SceneWeaponInfo.Builder builderForValue) {
      if (weaponBuilder_ == null) {
        weapon_ = builderForValue.build();
        onChanged();
      } else {
        weaponBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public Builder mergeWeapon(io.grasscutter.net.proto.define.SceneWeaponInfo value) {
      if (weaponBuilder_ == null) {
        if (weapon_ != null) {
          weapon_ =
            io.grasscutter.net.proto.define.SceneWeaponInfo.newBuilder(weapon_).mergeFrom(value).buildPartial();
        } else {
          weapon_ = value;
        }
        onChanged();
      } else {
        weaponBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public Builder clearWeapon() {
      if (weaponBuilder_ == null) {
        weapon_ = null;
        onChanged();
      } else {
        weapon_ = null;
        weaponBuilder_ = null;
      }

      return this;
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public io.grasscutter.net.proto.define.SceneWeaponInfo.Builder getWeaponBuilder() {
      
      onChanged();
      return getWeaponFieldBuilder().getBuilder();
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    public io.grasscutter.net.proto.define.SceneWeaponInfoOrBuilder getWeaponOrBuilder() {
      if (weaponBuilder_ != null) {
        return weaponBuilder_.getMessageOrBuilder();
      } else {
        return weapon_ == null ?
            io.grasscutter.net.proto.define.SceneWeaponInfo.getDefaultInstance() : weapon_;
      }
    }
    /**
     * <code>.SceneWeaponInfo weapon = 8;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.SceneWeaponInfo, io.grasscutter.net.proto.define.SceneWeaponInfo.Builder, io.grasscutter.net.proto.define.SceneWeaponInfoOrBuilder> 
        getWeaponFieldBuilder() {
      if (weaponBuilder_ == null) {
        weaponBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            io.grasscutter.net.proto.define.SceneWeaponInfo, io.grasscutter.net.proto.define.SceneWeaponInfo.Builder, io.grasscutter.net.proto.define.SceneWeaponInfoOrBuilder>(
                getWeapon(),
                getParentForChildren(),
                isClean());
        weapon_ = null;
      }
      return weaponBuilder_;
    }

    private io.grasscutter.net.proto.define.OGAAEKDALAL kFNKGCDHMJK_;
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.OGAAEKDALAL, io.grasscutter.net.proto.define.OGAAEKDALAL.Builder, io.grasscutter.net.proto.define.OGAAEKDALALOrBuilder> kFNKGCDHMJKBuilder_;
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     * @return Whether the kFNKGCDHMJK field is set.
     */
    public boolean hasKFNKGCDHMJK() {
      return kFNKGCDHMJKBuilder_ != null || kFNKGCDHMJK_ != null;
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     * @return The kFNKGCDHMJK.
     */
    public io.grasscutter.net.proto.define.OGAAEKDALAL getKFNKGCDHMJK() {
      if (kFNKGCDHMJKBuilder_ == null) {
        return kFNKGCDHMJK_ == null ? io.grasscutter.net.proto.define.OGAAEKDALAL.getDefaultInstance() : kFNKGCDHMJK_;
      } else {
        return kFNKGCDHMJKBuilder_.getMessage();
      }
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public Builder setKFNKGCDHMJK(io.grasscutter.net.proto.define.OGAAEKDALAL value) {
      if (kFNKGCDHMJKBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        kFNKGCDHMJK_ = value;
        onChanged();
      } else {
        kFNKGCDHMJKBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public Builder setKFNKGCDHMJK(
        io.grasscutter.net.proto.define.OGAAEKDALAL.Builder builderForValue) {
      if (kFNKGCDHMJKBuilder_ == null) {
        kFNKGCDHMJK_ = builderForValue.build();
        onChanged();
      } else {
        kFNKGCDHMJKBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public Builder mergeKFNKGCDHMJK(io.grasscutter.net.proto.define.OGAAEKDALAL value) {
      if (kFNKGCDHMJKBuilder_ == null) {
        if (kFNKGCDHMJK_ != null) {
          kFNKGCDHMJK_ =
            io.grasscutter.net.proto.define.OGAAEKDALAL.newBuilder(kFNKGCDHMJK_).mergeFrom(value).buildPartial();
        } else {
          kFNKGCDHMJK_ = value;
        }
        onChanged();
      } else {
        kFNKGCDHMJKBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public Builder clearKFNKGCDHMJK() {
      if (kFNKGCDHMJKBuilder_ == null) {
        kFNKGCDHMJK_ = null;
        onChanged();
      } else {
        kFNKGCDHMJK_ = null;
        kFNKGCDHMJKBuilder_ = null;
      }

      return this;
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public io.grasscutter.net.proto.define.OGAAEKDALAL.Builder getKFNKGCDHMJKBuilder() {
      
      onChanged();
      return getKFNKGCDHMJKFieldBuilder().getBuilder();
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    public io.grasscutter.net.proto.define.OGAAEKDALALOrBuilder getKFNKGCDHMJKOrBuilder() {
      if (kFNKGCDHMJKBuilder_ != null) {
        return kFNKGCDHMJKBuilder_.getMessageOrBuilder();
      } else {
        return kFNKGCDHMJK_ == null ?
            io.grasscutter.net.proto.define.OGAAEKDALAL.getDefaultInstance() : kFNKGCDHMJK_;
      }
    }
    /**
     * <code>.OGAAEKDALAL KFNKGCDHMJK = 20;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        io.grasscutter.net.proto.define.OGAAEKDALAL, io.grasscutter.net.proto.define.OGAAEKDALAL.Builder, io.grasscutter.net.proto.define.OGAAEKDALALOrBuilder> 
        getKFNKGCDHMJKFieldBuilder() {
      if (kFNKGCDHMJKBuilder_ == null) {
        kFNKGCDHMJKBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            io.grasscutter.net.proto.define.OGAAEKDALAL, io.grasscutter.net.proto.define.OGAAEKDALAL.Builder, io.grasscutter.net.proto.define.OGAAEKDALALOrBuilder>(
                getKFNKGCDHMJK(),
                getParentForChildren(),
                isClean());
        kFNKGCDHMJK_ = null;
      }
      return kFNKGCDHMJKBuilder_;
    }

    private com.google.protobuf.Internal.IntList inherentProudSkillList_ = emptyIntList();
    private void ensureInherentProudSkillListIsMutable() {
      if (!((bitField0_ & 0x00000080) != 0)) {
        inherentProudSkillList_ = mutableCopy(inherentProudSkillList_);
        bitField0_ |= 0x00000080;
       }
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @return A list containing the inherentProudSkillList.
     */
    public java.util.List<java.lang.Integer>
        getInherentProudSkillListList() {
      return ((bitField0_ & 0x00000080) != 0) ?
               java.util.Collections.unmodifiableList(inherentProudSkillList_) : inherentProudSkillList_;
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @return The count of inherentProudSkillList.
     */
    public int getInherentProudSkillListCount() {
      return inherentProudSkillList_.size();
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @param index The index of the element to return.
     * @return The inherentProudSkillList at the given index.
     */
    public int getInherentProudSkillList(int index) {
      return inherentProudSkillList_.getInt(index);
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @param index The index to set the value at.
     * @param value The inherentProudSkillList to set.
     * @return This builder for chaining.
     */
    public Builder setInherentProudSkillList(
        int index, int value) {
      ensureInherentProudSkillListIsMutable();
      inherentProudSkillList_.setInt(index, value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @param value The inherentProudSkillList to add.
     * @return This builder for chaining.
     */
    public Builder addInherentProudSkillList(int value) {
      ensureInherentProudSkillListIsMutable();
      inherentProudSkillList_.addInt(value);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @param values The inherentProudSkillList to add.
     * @return This builder for chaining.
     */
    public Builder addAllInherentProudSkillList(
        java.lang.Iterable<? extends java.lang.Integer> values) {
      ensureInherentProudSkillListIsMutable();
      com.google.protobuf.AbstractMessageLite.Builder.addAll(
          values, inherentProudSkillList_);
      onChanged();
      return this;
    }
    /**
     * <code>repeated uint32 inherent_proud_skill_list = 12;</code>
     * @return This builder for chaining.
     */
    public Builder clearInherentProudSkillList() {
      inherentProudSkillList_ = emptyIntList();
      bitField0_ = (bitField0_ & ~0x00000080);
      onChanged();
      return this;
    }

    private int uid_ ;
    /**
     * <code>uint32 uid = 1;</code>
     * @return The uid.
     */
    @java.lang.Override
    public int getUid() {
      return uid_;
    }
    /**
     * <code>uint32 uid = 1;</code>
     * @param value The uid to set.
     * @return This builder for chaining.
     */
    public Builder setUid(int value) {
      
      uid_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 uid = 1;</code>
     * @return This builder for chaining.
     */
    public Builder clearUid() {
      
      uid_ = 0;
      onChanged();
      return this;
    }

    private int traceEffectId_ ;
    /**
     * <code>uint32 trace_effect_id = 23;</code>
     * @return The traceEffectId.
     */
    @java.lang.Override
    public int getTraceEffectId() {
      return traceEffectId_;
    }
    /**
     * <code>uint32 trace_effect_id = 23;</code>
     * @param value The traceEffectId to set.
     * @return This builder for chaining.
     */
    public Builder setTraceEffectId(int value) {
      
      traceEffectId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 trace_effect_id = 23;</code>
     * @return This builder for chaining.
     */
    public Builder clearTraceEffectId() {
      
      traceEffectId_ = 0;
      onChanged();
      return this;
    }

    private int animHash_ ;
    /**
     * <code>uint32 anim_hash = 22;</code>
     * @return The animHash.
     */
    @java.lang.Override
    public int getAnimHash() {
      return animHash_;
    }
    /**
     * <code>uint32 anim_hash = 22;</code>
     * @param value The animHash to set.
     * @return This builder for chaining.
     */
    public Builder setAnimHash(int value) {
      
      animHash_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 anim_hash = 22;</code>
     * @return This builder for chaining.
     */
    public Builder clearAnimHash() {
      
      animHash_ = 0;
      onChanged();
      return this;
    }

    private int avatarId_ ;
    /**
     * <code>uint32 avatar_id = 2;</code>
     * @return The avatarId.
     */
    @java.lang.Override
    public int getAvatarId() {
      return avatarId_;
    }
    /**
     * <code>uint32 avatar_id = 2;</code>
     * @param value The avatarId to set.
     * @return This builder for chaining.
     */
    public Builder setAvatarId(int value) {
      
      avatarId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 avatar_id = 2;</code>
     * @return This builder for chaining.
     */
    public Builder clearAvatarId() {
      
      avatarId_ = 0;
      onChanged();
      return this;
    }

    private long guid_ ;
    /**
     * <code>uint64 guid = 3;</code>
     * @return The guid.
     */
    @java.lang.Override
    public long getGuid() {
      return guid_;
    }
    /**
     * <code>uint64 guid = 3;</code>
     * @param value The guid to set.
     * @return This builder for chaining.
     */
    public Builder setGuid(long value) {
      
      guid_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint64 guid = 3;</code>
     * @return This builder for chaining.
     */
    public Builder clearGuid() {
      
      guid_ = 0L;
      onChanged();
      return this;
    }

    private int coreProudSkillLevel_ ;
    /**
     * <code>uint32 core_proud_skill_level = 11;</code>
     * @return The coreProudSkillLevel.
     */
    @java.lang.Override
    public int getCoreProudSkillLevel() {
      return coreProudSkillLevel_;
    }
    /**
     * <code>uint32 core_proud_skill_level = 11;</code>
     * @param value The coreProudSkillLevel to set.
     * @return This builder for chaining.
     */
    public Builder setCoreProudSkillLevel(int value) {
      
      coreProudSkillLevel_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 core_proud_skill_level = 11;</code>
     * @return This builder for chaining.
     */
    public Builder clearCoreProudSkillLevel() {
      
      coreProudSkillLevel_ = 0;
      onChanged();
      return this;
    }

    private int costumeId_ ;
    /**
     * <code>uint32 costume_id = 19;</code>
     * @return The costumeId.
     */
    @java.lang.Override
    public int getCostumeId() {
      return costumeId_;
    }
    /**
     * <code>uint32 costume_id = 19;</code>
     * @param value The costumeId to set.
     * @return This builder for chaining.
     */
    public Builder setCostumeId(int value) {
      
      costumeId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 costume_id = 19;</code>
     * @return This builder for chaining.
     */
    public Builder clearCostumeId() {
      
      costumeId_ = 0;
      onChanged();
      return this;
    }

    private int peerId_ ;
    /**
     * <code>uint32 peer_id = 4;</code>
     * @return The peerId.
     */
    @java.lang.Override
    public int getPeerId() {
      return peerId_;
    }
    /**
     * <code>uint32 peer_id = 4;</code>
     * @param value The peerId to set.
     * @return This builder for chaining.
     */
    public Builder setPeerId(int value) {
      
      peerId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 peer_id = 4;</code>
     * @return This builder for chaining.
     */
    public Builder clearPeerId() {
      
      peerId_ = 0;
      onChanged();
      return this;
    }

    private int skillDepotId_ ;
    /**
     * <code>uint32 skill_depot_id = 6;</code>
     * @return The skillDepotId.
     */
    @java.lang.Override
    public int getSkillDepotId() {
      return skillDepotId_;
    }
    /**
     * <code>uint32 skill_depot_id = 6;</code>
     * @param value The skillDepotId to set.
     * @return This builder for chaining.
     */
    public Builder setSkillDepotId(int value) {
      
      skillDepotId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 skill_depot_id = 6;</code>
     * @return This builder for chaining.
     */
    public Builder clearSkillDepotId() {
      
      skillDepotId_ = 0;
      onChanged();
      return this;
    }

    private int bornTime_ ;
    /**
     * <code>uint32 born_time = 18;</code>
     * @return The bornTime.
     */
    @java.lang.Override
    public int getBornTime() {
      return bornTime_;
    }
    /**
     * <code>uint32 born_time = 18;</code>
     * @param value The bornTime to set.
     * @return This builder for chaining.
     */
    public Builder setBornTime(int value) {
      
      bornTime_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 born_time = 18;</code>
     * @return This builder for chaining.
     */
    public Builder clearBornTime() {
      
      bornTime_ = 0;
      onChanged();
      return this;
    }

    private int wearingFlycloakId_ ;
    /**
     * <code>uint32 wearing_flycloak_id = 17;</code>
     * @return The wearingFlycloakId.
     */
    @java.lang.Override
    public int getWearingFlycloakId() {
      return wearingFlycloakId_;
    }
    /**
     * <code>uint32 wearing_flycloak_id = 17;</code>
     * @param value The wearingFlycloakId to set.
     * @return This builder for chaining.
     */
    public Builder setWearingFlycloakId(int value) {
      
      wearingFlycloakId_ = value;
      onChanged();
      return this;
    }
    /**
     * <code>uint32 wearing_flycloak_id = 17;</code>
     * @return This builder for chaining.
     */
    public Builder clearWearingFlycloakId() {
      
      wearingFlycloakId_ = 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:NAPNKPIHEBF)
  }

  // @@protoc_insertion_point(class_scope:NAPNKPIHEBF)
  private static final io.grasscutter.net.proto.define.NAPNKPIHEBF DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new io.grasscutter.net.proto.define.NAPNKPIHEBF();
  }

  public static io.grasscutter.net.proto.define.NAPNKPIHEBF getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

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

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

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

  @java.lang.Override
  public io.grasscutter.net.proto.define.NAPNKPIHEBF getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}

