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

#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
#include "client2world_friend.pb.h"

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)

namespace client2world_protocols {

namespace {

const ::google::protobuf::Descriptor* FriendInfo_descriptor_ = NULL;
const ::google::protobuf::internal::GeneratedMessageReflection*
  FriendInfo_reflection_ = NULL;
const ::google::protobuf::Descriptor* packetc2w_req_friend_list_descriptor_ = NULL;
const ::google::protobuf::internal::GeneratedMessageReflection*
  packetc2w_req_friend_list_reflection_ = NULL;
const ::google::protobuf::Descriptor* packetw2c_req_friend_list_result_descriptor_ = NULL;
const ::google::protobuf::internal::GeneratedMessageReflection*
  packetw2c_req_friend_list_result_reflection_ = NULL;

}  // namespace


void protobuf_AssignDesc_client2world_5ffriend_2eproto() {
  protobuf_AddDesc_client2world_5ffriend_2eproto();
  const ::google::protobuf::FileDescriptor* file =
    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
      "client2world_friend.proto");
  GOOGLE_CHECK(file != NULL);
  FriendInfo_descriptor_ = file->message_type(0);
  static const int FriendInfo_offsets_[12] = {
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, friendid_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, sex_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, online_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, viplevel_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, nickname_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, iconcustom_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, photoframeid_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, selfsignature_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, giftlist_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, giftcoincount_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, gold_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, fishlevel_),
  };
  FriendInfo_reflection_ =
    new ::google::protobuf::internal::GeneratedMessageReflection(
      FriendInfo_descriptor_,
      FriendInfo::default_instance_,
      FriendInfo_offsets_,
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, _has_bits_[0]),
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FriendInfo, _unknown_fields_),
      -1,
      ::google::protobuf::DescriptorPool::generated_pool(),
      ::google::protobuf::MessageFactory::generated_factory(),
      sizeof(FriendInfo));
  packetc2w_req_friend_list_descriptor_ = file->message_type(1);
  static const int packetc2w_req_friend_list_offsets_[1] = {
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetc2w_req_friend_list, packet_id_),
  };
  packetc2w_req_friend_list_reflection_ =
    new ::google::protobuf::internal::GeneratedMessageReflection(
      packetc2w_req_friend_list_descriptor_,
      packetc2w_req_friend_list::default_instance_,
      packetc2w_req_friend_list_offsets_,
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetc2w_req_friend_list, _has_bits_[0]),
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetc2w_req_friend_list, _unknown_fields_),
      -1,
      ::google::protobuf::DescriptorPool::generated_pool(),
      ::google::protobuf::MessageFactory::generated_factory(),
      sizeof(packetc2w_req_friend_list));
  packetw2c_req_friend_list_result_descriptor_ = file->message_type(2);
  static const int packetw2c_req_friend_list_result_offsets_[2] = {
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetw2c_req_friend_list_result, packet_id_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetw2c_req_friend_list_result, friendlist_),
  };
  packetw2c_req_friend_list_result_reflection_ =
    new ::google::protobuf::internal::GeneratedMessageReflection(
      packetw2c_req_friend_list_result_descriptor_,
      packetw2c_req_friend_list_result::default_instance_,
      packetw2c_req_friend_list_result_offsets_,
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetw2c_req_friend_list_result, _has_bits_[0]),
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(packetw2c_req_friend_list_result, _unknown_fields_),
      -1,
      ::google::protobuf::DescriptorPool::generated_pool(),
      ::google::protobuf::MessageFactory::generated_factory(),
      sizeof(packetw2c_req_friend_list_result));
}

namespace {

GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
inline void protobuf_AssignDescriptorsOnce() {
  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
                 &protobuf_AssignDesc_client2world_5ffriend_2eproto);
}

void protobuf_RegisterTypes(const ::std::string&) {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
    FriendInfo_descriptor_, &FriendInfo::default_instance());
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
    packetc2w_req_friend_list_descriptor_, &packetc2w_req_friend_list::default_instance());
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
    packetw2c_req_friend_list_result_descriptor_, &packetw2c_req_friend_list_result::default_instance());
}

}  // namespace

void protobuf_ShutdownFile_client2world_5ffriend_2eproto() {
  delete FriendInfo::default_instance_;
  delete FriendInfo_reflection_;
  delete packetc2w_req_friend_list::default_instance_;
  delete packetc2w_req_friend_list_reflection_;
  delete packetw2c_req_friend_list_result::default_instance_;
  delete packetw2c_req_friend_list_result_reflection_;
}

void protobuf_AddDesc_client2world_5ffriend_2eproto() {
  static bool already_here = false;
  if (already_here) return;
  already_here = true;
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  ::client2world_protocols::protobuf_AddDesc_client2world_5fmsg_5ftype_2eproto();
  ::msg_type_def::protobuf_AddDesc_msg_5ftype_5fdef_2eproto();
  ::msg_info_def::protobuf_AddDesc_msg_5finfo_5fdef_2eproto();
  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
    "\n\031client2world_friend.proto\022\026client2worl"
    "d_protocols\032\033client2world_msg_type.proto"
    "\032\022msg_type_def.proto\032\022msg_info_def.proto"
    "\"\202\002\n\nFriendInfo\022\020\n\010friendId\030\001 \001(\005\022\013\n\003sex"
    "\030\002 \001(\005\022\016\n\006online\030\003 \001(\010\022\020\n\010vipLevel\030\004 \001(\005"
    "\022\020\n\010nickName\030\005 \001(\t\022\022\n\niconCustom\030\006 \001(\005\022\024"
    "\n\014photoFrameId\030\007 \001(\005\022\025\n\rselfSignature\030\010 "
    "\001(\t\022(\n\010giftList\030\t \003(\0132\026.msg_info_def.msg"
    "_gift\022\025\n\rgiftCoinCount\030\n \001(\005\022\014\n\004gold\030\013 \001"
    "(\005\022\021\n\tfishLevel\030\014 \001(\005\"t\n\031packetc2w_req_f"
    "riend_list\022W\n\tpacket_id\030\001 \001(\0162).client2w"
    "orld_protocols.e_server_msg_type:\031e_mst_"
    "c2w_req_friend_list\"\272\001\n packetw2c_req_fr"
    "iend_list_result\022^\n\tpacket_id\030\001 \001(\0162).cl"
    "ient2world_protocols.e_server_msg_type: "
    "e_mst_w2c_req_friend_list_result\0226\n\nfrie"
    "ndList\030\002 \003(\0132\".client2world_protocols.Fr"
    "iendInfo", 688);
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
    "client2world_friend.proto", &protobuf_RegisterTypes);
  FriendInfo::default_instance_ = new FriendInfo();
  packetc2w_req_friend_list::default_instance_ = new packetc2w_req_friend_list();
  packetw2c_req_friend_list_result::default_instance_ = new packetw2c_req_friend_list_result();
  FriendInfo::default_instance_->InitAsDefaultInstance();
  packetc2w_req_friend_list::default_instance_->InitAsDefaultInstance();
  packetw2c_req_friend_list_result::default_instance_->InitAsDefaultInstance();
  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_client2world_5ffriend_2eproto);
}

// Force AddDescriptors() to be called at static initialization time.
struct StaticDescriptorInitializer_client2world_5ffriend_2eproto {
  StaticDescriptorInitializer_client2world_5ffriend_2eproto() {
    protobuf_AddDesc_client2world_5ffriend_2eproto();
  }
} static_descriptor_initializer_client2world_5ffriend_2eproto_;

// ===================================================================

#ifndef _MSC_VER
const int FriendInfo::kFriendIdFieldNumber;
const int FriendInfo::kSexFieldNumber;
const int FriendInfo::kOnlineFieldNumber;
const int FriendInfo::kVipLevelFieldNumber;
const int FriendInfo::kNickNameFieldNumber;
const int FriendInfo::kIconCustomFieldNumber;
const int FriendInfo::kPhotoFrameIdFieldNumber;
const int FriendInfo::kSelfSignatureFieldNumber;
const int FriendInfo::kGiftListFieldNumber;
const int FriendInfo::kGiftCoinCountFieldNumber;
const int FriendInfo::kGoldFieldNumber;
const int FriendInfo::kFishLevelFieldNumber;
#endif  // !_MSC_VER

FriendInfo::FriendInfo()
  : ::google::protobuf::Message() {
  SharedCtor();
}

void FriendInfo::InitAsDefaultInstance() {
}

FriendInfo::FriendInfo(const FriendInfo& from)
  : ::google::protobuf::Message() {
  SharedCtor();
  MergeFrom(from);
}

void FriendInfo::SharedCtor() {
  _cached_size_ = 0;
  friendid_ = 0;
  sex_ = 0;
  online_ = false;
  viplevel_ = 0;
  nickname_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  iconcustom_ = 0;
  photoframeid_ = 0;
  selfsignature_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  giftcoincount_ = 0;
  gold_ = 0;
  fishlevel_ = 0;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

FriendInfo::~FriendInfo() {
  SharedDtor();
}

void FriendInfo::SharedDtor() {
  if (nickname_ != &::google::protobuf::internal::kEmptyString) {
    delete nickname_;
  }
  if (selfsignature_ != &::google::protobuf::internal::kEmptyString) {
    delete selfsignature_;
  }
  if (this != default_instance_) {
  }
}

void FriendInfo::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* FriendInfo::descriptor() {
  protobuf_AssignDescriptorsOnce();
  return FriendInfo_descriptor_;
}

const FriendInfo& FriendInfo::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_client2world_5ffriend_2eproto();
  return *default_instance_;
}

FriendInfo* FriendInfo::default_instance_ = NULL;

FriendInfo* FriendInfo::New() const {
  return new FriendInfo;
}

void FriendInfo::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    friendid_ = 0;
    sex_ = 0;
    online_ = false;
    viplevel_ = 0;
    if (has_nickname()) {
      if (nickname_ != &::google::protobuf::internal::kEmptyString) {
        nickname_->clear();
      }
    }
    iconcustom_ = 0;
    photoframeid_ = 0;
    if (has_selfsignature()) {
      if (selfsignature_ != &::google::protobuf::internal::kEmptyString) {
        selfsignature_->clear();
      }
    }
  }
  if (_has_bits_[9 / 32] & (0xffu << (9 % 32))) {
    giftcoincount_ = 0;
    gold_ = 0;
    fishlevel_ = 0;
  }
  giftlist_.Clear();
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
  mutable_unknown_fields()->Clear();
}

bool FriendInfo::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional int32 friendId = 1;
      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &friendid_)));
          set_has_friendid();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(16)) goto parse_sex;
        break;
      }

      // optional int32 sex = 2;
      case 2: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_sex:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &sex_)));
          set_has_sex();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(24)) goto parse_online;
        break;
      }

      // optional bool online = 3;
      case 3: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_online:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &online_)));
          set_has_online();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(32)) goto parse_vipLevel;
        break;
      }

      // optional int32 vipLevel = 4;
      case 4: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_vipLevel:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &viplevel_)));
          set_has_viplevel();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(42)) goto parse_nickName;
        break;
      }

      // optional string nickName = 5;
      case 5: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_nickName:
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_nickname()));
          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
            this->nickname().data(), this->nickname().length(),
            ::google::protobuf::internal::WireFormat::PARSE);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(48)) goto parse_iconCustom;
        break;
      }

      // optional int32 iconCustom = 6;
      case 6: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_iconCustom:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &iconcustom_)));
          set_has_iconcustom();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(56)) goto parse_photoFrameId;
        break;
      }

      // optional int32 photoFrameId = 7;
      case 7: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_photoFrameId:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &photoframeid_)));
          set_has_photoframeid();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(66)) goto parse_selfSignature;
        break;
      }

      // optional string selfSignature = 8;
      case 8: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_selfSignature:
          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                input, this->mutable_selfsignature()));
          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
            this->selfsignature().data(), this->selfsignature().length(),
            ::google::protobuf::internal::WireFormat::PARSE);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(74)) goto parse_giftList;
        break;
      }

      // repeated .msg_info_def.msg_gift giftList = 9;
      case 9: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_giftList:
          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, add_giftlist()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(74)) goto parse_giftList;
        if (input->ExpectTag(80)) goto parse_giftCoinCount;
        break;
      }

      // optional int32 giftCoinCount = 10;
      case 10: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_giftCoinCount:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &giftcoincount_)));
          set_has_giftcoincount();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(88)) goto parse_gold;
        break;
      }

      // optional int32 gold = 11;
      case 11: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_gold:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &gold_)));
          set_has_gold();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(96)) goto parse_fishLevel;
        break;
      }

      // optional int32 fishLevel = 12;
      case 12: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_fishLevel:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &fishlevel_)));
          set_has_fishlevel();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectAtEnd()) return true;
        break;
      }

      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, mutable_unknown_fields()));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void FriendInfo::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // optional int32 friendId = 1;
  if (has_friendid()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->friendid(), output);
  }

  // optional int32 sex = 2;
  if (has_sex()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->sex(), output);
  }

  // optional bool online = 3;
  if (has_online()) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->online(), output);
  }

  // optional int32 vipLevel = 4;
  if (has_viplevel()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->viplevel(), output);
  }

  // optional string nickName = 5;
  if (has_nickname()) {
    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
      this->nickname().data(), this->nickname().length(),
      ::google::protobuf::internal::WireFormat::SERIALIZE);
    ::google::protobuf::internal::WireFormatLite::WriteString(
      5, this->nickname(), output);
  }

  // optional int32 iconCustom = 6;
  if (has_iconcustom()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->iconcustom(), output);
  }

  // optional int32 photoFrameId = 7;
  if (has_photoframeid()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->photoframeid(), output);
  }

  // optional string selfSignature = 8;
  if (has_selfsignature()) {
    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
      this->selfsignature().data(), this->selfsignature().length(),
      ::google::protobuf::internal::WireFormat::SERIALIZE);
    ::google::protobuf::internal::WireFormatLite::WriteString(
      8, this->selfsignature(), output);
  }

  // repeated .msg_info_def.msg_gift giftList = 9;
  for (int i = 0; i < this->giftlist_size(); i++) {
    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
      9, this->giftlist(i), output);
  }

  // optional int32 giftCoinCount = 10;
  if (has_giftcoincount()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->giftcoincount(), output);
  }

  // optional int32 gold = 11;
  if (has_gold()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(11, this->gold(), output);
  }

  // optional int32 fishLevel = 12;
  if (has_fishlevel()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(12, this->fishlevel(), output);
  }

  if (!unknown_fields().empty()) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        unknown_fields(), output);
  }
}

::google::protobuf::uint8* FriendInfo::SerializeWithCachedSizesToArray(
    ::google::protobuf::uint8* target) const {
  // optional int32 friendId = 1;
  if (has_friendid()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->friendid(), target);
  }

  // optional int32 sex = 2;
  if (has_sex()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->sex(), target);
  }

  // optional bool online = 3;
  if (has_online()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->online(), target);
  }

  // optional int32 vipLevel = 4;
  if (has_viplevel()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->viplevel(), target);
  }

  // optional string nickName = 5;
  if (has_nickname()) {
    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
      this->nickname().data(), this->nickname().length(),
      ::google::protobuf::internal::WireFormat::SERIALIZE);
    target =
      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
        5, this->nickname(), target);
  }

  // optional int32 iconCustom = 6;
  if (has_iconcustom()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(6, this->iconcustom(), target);
  }

  // optional int32 photoFrameId = 7;
  if (has_photoframeid()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(7, this->photoframeid(), target);
  }

  // optional string selfSignature = 8;
  if (has_selfsignature()) {
    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
      this->selfsignature().data(), this->selfsignature().length(),
      ::google::protobuf::internal::WireFormat::SERIALIZE);
    target =
      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
        8, this->selfsignature(), target);
  }

  // repeated .msg_info_def.msg_gift giftList = 9;
  for (int i = 0; i < this->giftlist_size(); i++) {
    target = ::google::protobuf::internal::WireFormatLite::
      WriteMessageNoVirtualToArray(
        9, this->giftlist(i), target);
  }

  // optional int32 giftCoinCount = 10;
  if (has_giftcoincount()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->giftcoincount(), target);
  }

  // optional int32 gold = 11;
  if (has_gold()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(11, this->gold(), target);
  }

  // optional int32 fishLevel = 12;
  if (has_fishlevel()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(12, this->fishlevel(), target);
  }

  if (!unknown_fields().empty()) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        unknown_fields(), target);
  }
  return target;
}

int FriendInfo::ByteSize() const {
  int total_size = 0;

  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    // optional int32 friendId = 1;
    if (has_friendid()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->friendid());
    }

    // optional int32 sex = 2;
    if (has_sex()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->sex());
    }

    // optional bool online = 3;
    if (has_online()) {
      total_size += 1 + 1;
    }

    // optional int32 vipLevel = 4;
    if (has_viplevel()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->viplevel());
    }

    // optional string nickName = 5;
    if (has_nickname()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->nickname());
    }

    // optional int32 iconCustom = 6;
    if (has_iconcustom()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->iconcustom());
    }

    // optional int32 photoFrameId = 7;
    if (has_photoframeid()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->photoframeid());
    }

    // optional string selfSignature = 8;
    if (has_selfsignature()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::StringSize(
          this->selfsignature());
    }

  }
  if (_has_bits_[9 / 32] & (0xffu << (9 % 32))) {
    // optional int32 giftCoinCount = 10;
    if (has_giftcoincount()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->giftcoincount());
    }

    // optional int32 gold = 11;
    if (has_gold()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->gold());
    }

    // optional int32 fishLevel = 12;
    if (has_fishlevel()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->fishlevel());
    }

  }
  // repeated .msg_info_def.msg_gift giftList = 9;
  total_size += 1 * this->giftlist_size();
  for (int i = 0; i < this->giftlist_size(); i++) {
    total_size +=
      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
        this->giftlist(i));
  }

  if (!unknown_fields().empty()) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        unknown_fields());
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void FriendInfo::MergeFrom(const ::google::protobuf::Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  const FriendInfo* source =
    ::google::protobuf::internal::dynamic_cast_if_available<const FriendInfo*>(
      &from);
  if (source == NULL) {
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
    MergeFrom(*source);
  }
}

void FriendInfo::MergeFrom(const FriendInfo& from) {
  GOOGLE_CHECK_NE(&from, this);
  giftlist_.MergeFrom(from.giftlist_);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from.has_friendid()) {
      set_friendid(from.friendid());
    }
    if (from.has_sex()) {
      set_sex(from.sex());
    }
    if (from.has_online()) {
      set_online(from.online());
    }
    if (from.has_viplevel()) {
      set_viplevel(from.viplevel());
    }
    if (from.has_nickname()) {
      set_nickname(from.nickname());
    }
    if (from.has_iconcustom()) {
      set_iconcustom(from.iconcustom());
    }
    if (from.has_photoframeid()) {
      set_photoframeid(from.photoframeid());
    }
    if (from.has_selfsignature()) {
      set_selfsignature(from.selfsignature());
    }
  }
  if (from._has_bits_[9 / 32] & (0xffu << (9 % 32))) {
    if (from.has_giftcoincount()) {
      set_giftcoincount(from.giftcoincount());
    }
    if (from.has_gold()) {
      set_gold(from.gold());
    }
    if (from.has_fishlevel()) {
      set_fishlevel(from.fishlevel());
    }
  }
  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
}

void FriendInfo::CopyFrom(const ::google::protobuf::Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void FriendInfo::CopyFrom(const FriendInfo& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool FriendInfo::IsInitialized() const {

  return true;
}

void FriendInfo::Swap(FriendInfo* other) {
  if (other != this) {
    std::swap(friendid_, other->friendid_);
    std::swap(sex_, other->sex_);
    std::swap(online_, other->online_);
    std::swap(viplevel_, other->viplevel_);
    std::swap(nickname_, other->nickname_);
    std::swap(iconcustom_, other->iconcustom_);
    std::swap(photoframeid_, other->photoframeid_);
    std::swap(selfsignature_, other->selfsignature_);
    giftlist_.Swap(&other->giftlist_);
    std::swap(giftcoincount_, other->giftcoincount_);
    std::swap(gold_, other->gold_);
    std::swap(fishlevel_, other->fishlevel_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    _unknown_fields_.Swap(&other->_unknown_fields_);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::google::protobuf::Metadata FriendInfo::GetMetadata() const {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::Metadata metadata;
  metadata.descriptor = FriendInfo_descriptor_;
  metadata.reflection = FriendInfo_reflection_;
  return metadata;
}


// ===================================================================

#ifndef _MSC_VER
const int packetc2w_req_friend_list::kPacketIdFieldNumber;
#endif  // !_MSC_VER

packetc2w_req_friend_list::packetc2w_req_friend_list()
  : ::google::protobuf::Message() {
  SharedCtor();
}

void packetc2w_req_friend_list::InitAsDefaultInstance() {
}

packetc2w_req_friend_list::packetc2w_req_friend_list(const packetc2w_req_friend_list& from)
  : ::google::protobuf::Message() {
  SharedCtor();
  MergeFrom(from);
}

void packetc2w_req_friend_list::SharedCtor() {
  _cached_size_ = 0;
  packet_id_ = 5025;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

packetc2w_req_friend_list::~packetc2w_req_friend_list() {
  SharedDtor();
}

void packetc2w_req_friend_list::SharedDtor() {
  if (this != default_instance_) {
  }
}

void packetc2w_req_friend_list::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* packetc2w_req_friend_list::descriptor() {
  protobuf_AssignDescriptorsOnce();
  return packetc2w_req_friend_list_descriptor_;
}

const packetc2w_req_friend_list& packetc2w_req_friend_list::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_client2world_5ffriend_2eproto();
  return *default_instance_;
}

packetc2w_req_friend_list* packetc2w_req_friend_list::default_instance_ = NULL;

packetc2w_req_friend_list* packetc2w_req_friend_list::New() const {
  return new packetc2w_req_friend_list;
}

void packetc2w_req_friend_list::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    packet_id_ = 5025;
  }
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
  mutable_unknown_fields()->Clear();
}

bool packetc2w_req_friend_list::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_c2w_req_friend_list];
      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::client2world_protocols::e_server_msg_type_IsValid(value)) {
            set_packet_id(static_cast< ::client2world_protocols::e_server_msg_type >(value));
          } else {
            mutable_unknown_fields()->AddVarint(1, value);
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectAtEnd()) return true;
        break;
      }

      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, mutable_unknown_fields()));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void packetc2w_req_friend_list::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_c2w_req_friend_list];
  if (has_packet_id()) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      1, this->packet_id(), output);
  }

  if (!unknown_fields().empty()) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        unknown_fields(), output);
  }
}

::google::protobuf::uint8* packetc2w_req_friend_list::SerializeWithCachedSizesToArray(
    ::google::protobuf::uint8* target) const {
  // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_c2w_req_friend_list];
  if (has_packet_id()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
      1, this->packet_id(), target);
  }

  if (!unknown_fields().empty()) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        unknown_fields(), target);
  }
  return target;
}

int packetc2w_req_friend_list::ByteSize() const {
  int total_size = 0;

  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_c2w_req_friend_list];
    if (has_packet_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->packet_id());
    }

  }
  if (!unknown_fields().empty()) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        unknown_fields());
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void packetc2w_req_friend_list::MergeFrom(const ::google::protobuf::Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  const packetc2w_req_friend_list* source =
    ::google::protobuf::internal::dynamic_cast_if_available<const packetc2w_req_friend_list*>(
      &from);
  if (source == NULL) {
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
    MergeFrom(*source);
  }
}

void packetc2w_req_friend_list::MergeFrom(const packetc2w_req_friend_list& from) {
  GOOGLE_CHECK_NE(&from, this);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from.has_packet_id()) {
      set_packet_id(from.packet_id());
    }
  }
  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
}

void packetc2w_req_friend_list::CopyFrom(const ::google::protobuf::Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void packetc2w_req_friend_list::CopyFrom(const packetc2w_req_friend_list& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool packetc2w_req_friend_list::IsInitialized() const {

  return true;
}

void packetc2w_req_friend_list::Swap(packetc2w_req_friend_list* other) {
  if (other != this) {
    std::swap(packet_id_, other->packet_id_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    _unknown_fields_.Swap(&other->_unknown_fields_);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::google::protobuf::Metadata packetc2w_req_friend_list::GetMetadata() const {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::Metadata metadata;
  metadata.descriptor = packetc2w_req_friend_list_descriptor_;
  metadata.reflection = packetc2w_req_friend_list_reflection_;
  return metadata;
}


// ===================================================================

#ifndef _MSC_VER
const int packetw2c_req_friend_list_result::kPacketIdFieldNumber;
const int packetw2c_req_friend_list_result::kFriendListFieldNumber;
#endif  // !_MSC_VER

packetw2c_req_friend_list_result::packetw2c_req_friend_list_result()
  : ::google::protobuf::Message() {
  SharedCtor();
}

void packetw2c_req_friend_list_result::InitAsDefaultInstance() {
}

packetw2c_req_friend_list_result::packetw2c_req_friend_list_result(const packetw2c_req_friend_list_result& from)
  : ::google::protobuf::Message() {
  SharedCtor();
  MergeFrom(from);
}

void packetw2c_req_friend_list_result::SharedCtor() {
  _cached_size_ = 0;
  packet_id_ = 7527;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

packetw2c_req_friend_list_result::~packetw2c_req_friend_list_result() {
  SharedDtor();
}

void packetw2c_req_friend_list_result::SharedDtor() {
  if (this != default_instance_) {
  }
}

void packetw2c_req_friend_list_result::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* packetw2c_req_friend_list_result::descriptor() {
  protobuf_AssignDescriptorsOnce();
  return packetw2c_req_friend_list_result_descriptor_;
}

const packetw2c_req_friend_list_result& packetw2c_req_friend_list_result::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_client2world_5ffriend_2eproto();
  return *default_instance_;
}

packetw2c_req_friend_list_result* packetw2c_req_friend_list_result::default_instance_ = NULL;

packetw2c_req_friend_list_result* packetw2c_req_friend_list_result::New() const {
  return new packetw2c_req_friend_list_result;
}

void packetw2c_req_friend_list_result::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    packet_id_ = 7527;
  }
  friendlist_.Clear();
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
  mutable_unknown_fields()->Clear();
}

bool packetw2c_req_friend_list_result::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_w2c_req_friend_list_result];
      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::client2world_protocols::e_server_msg_type_IsValid(value)) {
            set_packet_id(static_cast< ::client2world_protocols::e_server_msg_type >(value));
          } else {
            mutable_unknown_fields()->AddVarint(1, value);
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(18)) goto parse_friendList;
        break;
      }

      // repeated .client2world_protocols.FriendInfo friendList = 2;
      case 2: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_friendList:
          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, add_friendlist()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(18)) goto parse_friendList;
        if (input->ExpectAtEnd()) return true;
        break;
      }

      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, mutable_unknown_fields()));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void packetw2c_req_friend_list_result::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_w2c_req_friend_list_result];
  if (has_packet_id()) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      1, this->packet_id(), output);
  }

  // repeated .client2world_protocols.FriendInfo friendList = 2;
  for (int i = 0; i < this->friendlist_size(); i++) {
    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
      2, this->friendlist(i), output);
  }

  if (!unknown_fields().empty()) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        unknown_fields(), output);
  }
}

::google::protobuf::uint8* packetw2c_req_friend_list_result::SerializeWithCachedSizesToArray(
    ::google::protobuf::uint8* target) const {
  // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_w2c_req_friend_list_result];
  if (has_packet_id()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
      1, this->packet_id(), target);
  }

  // repeated .client2world_protocols.FriendInfo friendList = 2;
  for (int i = 0; i < this->friendlist_size(); i++) {
    target = ::google::protobuf::internal::WireFormatLite::
      WriteMessageNoVirtualToArray(
        2, this->friendlist(i), target);
  }

  if (!unknown_fields().empty()) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        unknown_fields(), target);
  }
  return target;
}

int packetw2c_req_friend_list_result::ByteSize() const {
  int total_size = 0;

  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    // optional .client2world_protocols.e_server_msg_type packet_id = 1 [default = e_mst_w2c_req_friend_list_result];
    if (has_packet_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->packet_id());
    }

  }
  // repeated .client2world_protocols.FriendInfo friendList = 2;
  total_size += 1 * this->friendlist_size();
  for (int i = 0; i < this->friendlist_size(); i++) {
    total_size +=
      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
        this->friendlist(i));
  }

  if (!unknown_fields().empty()) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        unknown_fields());
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void packetw2c_req_friend_list_result::MergeFrom(const ::google::protobuf::Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  const packetw2c_req_friend_list_result* source =
    ::google::protobuf::internal::dynamic_cast_if_available<const packetw2c_req_friend_list_result*>(
      &from);
  if (source == NULL) {
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
    MergeFrom(*source);
  }
}

void packetw2c_req_friend_list_result::MergeFrom(const packetw2c_req_friend_list_result& from) {
  GOOGLE_CHECK_NE(&from, this);
  friendlist_.MergeFrom(from.friendlist_);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from.has_packet_id()) {
      set_packet_id(from.packet_id());
    }
  }
  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
}

void packetw2c_req_friend_list_result::CopyFrom(const ::google::protobuf::Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void packetw2c_req_friend_list_result::CopyFrom(const packetw2c_req_friend_list_result& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool packetw2c_req_friend_list_result::IsInitialized() const {

  return true;
}

void packetw2c_req_friend_list_result::Swap(packetw2c_req_friend_list_result* other) {
  if (other != this) {
    std::swap(packet_id_, other->packet_id_);
    friendlist_.Swap(&other->friendlist_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    _unknown_fields_.Swap(&other->_unknown_fields_);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::google::protobuf::Metadata packetw2c_req_friend_list_result::GetMetadata() const {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::Metadata metadata;
  metadata.descriptor = packetw2c_req_friend_list_result_descriptor_;
  metadata.reflection = packetw2c_req_friend_list_result_reflection_;
  return metadata;
}


// @@protoc_insertion_point(namespace_scope)

}  // namespace client2world_protocols

// @@protoc_insertion_point(global_scope)
