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

#include "cs_gameevents.pb.h"

#include <algorithm>

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/extension_set.h>
#include <google/protobuf/wire_format_lite.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)
#include <google/protobuf/port_def.inc>

PROTOBUF_PRAGMA_INIT_SEG

namespace _pb = ::PROTOBUF_NAMESPACE_ID;
namespace _pbi = _pb::internal;

PROTOBUF_CONSTEXPR CMsgTEPlayerAnimEvent::CMsgTEPlayerAnimEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.event_)*/0u
  , /*decltype(_impl_.data_)*/0
  , /*decltype(_impl_.player_)*/16777215u} {}
struct CMsgTEPlayerAnimEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CMsgTEPlayerAnimEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CMsgTEPlayerAnimEventDefaultTypeInternal() {}
  union {
    CMsgTEPlayerAnimEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CMsgTEPlayerAnimEventDefaultTypeInternal _CMsgTEPlayerAnimEvent_default_instance_;
PROTOBUF_CONSTEXPR CMsgTERadioIcon::CMsgTERadioIcon(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.player_)*/16777215u} {}
struct CMsgTERadioIconDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CMsgTERadioIconDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CMsgTERadioIconDefaultTypeInternal() {}
  union {
    CMsgTERadioIcon _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CMsgTERadioIconDefaultTypeInternal _CMsgTERadioIcon_default_instance_;
PROTOBUF_CONSTEXPR CMsgTEFireBullets_Extra::CMsgTEFireBullets_Extra(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.aim_punch_)*/nullptr
  , /*decltype(_impl_.attack_tick_count_)*/0
  , /*decltype(_impl_.attack_tick_frac_)*/0
  , /*decltype(_impl_.render_tick_count_)*/0
  , /*decltype(_impl_.render_tick_frac_)*/0
  , /*decltype(_impl_.inaccuracy_move_)*/0
  , /*decltype(_impl_.inaccuracy_air_)*/0
  , /*decltype(_impl_.type_)*/0} {}
struct CMsgTEFireBullets_ExtraDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CMsgTEFireBullets_ExtraDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CMsgTEFireBullets_ExtraDefaultTypeInternal() {}
  union {
    CMsgTEFireBullets_Extra _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CMsgTEFireBullets_ExtraDefaultTypeInternal _CMsgTEFireBullets_Extra_default_instance_;
PROTOBUF_CONSTEXPR CMsgTEFireBullets::CMsgTEFireBullets(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.origin_)*/nullptr
  , /*decltype(_impl_.angles_)*/nullptr
  , /*decltype(_impl_.ent_origin_)*/nullptr
  , /*decltype(_impl_.extra_)*/nullptr
  , /*decltype(_impl_.mode_)*/0u
  , /*decltype(_impl_.seed_)*/0u
  , /*decltype(_impl_.inaccuracy_)*/0
  , /*decltype(_impl_.recoil_index_)*/0
  , /*decltype(_impl_.spread_)*/0
  , /*decltype(_impl_.sound_type_)*/0
  , /*decltype(_impl_.item_def_index_)*/0u
  , /*decltype(_impl_.sound_dsp_effect_)*/0u
  , /*decltype(_impl_.num_bullets_remaining_)*/0u
  , /*decltype(_impl_.attack_type_)*/0u
  , /*decltype(_impl_.player_inair_)*/false
  , /*decltype(_impl_.player_scoped_)*/false
  , /*decltype(_impl_.tick_)*/0
  , /*decltype(_impl_.weapon_id_)*/16777215u
  , /*decltype(_impl_.player_)*/16777215u} {}
struct CMsgTEFireBulletsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CMsgTEFireBulletsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CMsgTEFireBulletsDefaultTypeInternal() {}
  union {
    CMsgTEFireBullets _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CMsgTEFireBulletsDefaultTypeInternal _CMsgTEFireBullets_default_instance_;
PROTOBUF_CONSTEXPR CMsgPlayerBulletHit::CMsgPlayerBulletHit(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.victim_pos_)*/nullptr
  , /*decltype(_impl_.hit_group_)*/0
  , /*decltype(_impl_.damage_)*/0
  , /*decltype(_impl_.penetration_count_)*/0
  , /*decltype(_impl_.is_kill_)*/false
  , /*decltype(_impl_.attacker_slot_)*/-1
  , /*decltype(_impl_.victim_slot_)*/-1} {}
struct CMsgPlayerBulletHitDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CMsgPlayerBulletHitDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CMsgPlayerBulletHitDefaultTypeInternal() {}
  union {
    CMsgPlayerBulletHit _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CMsgPlayerBulletHitDefaultTypeInternal _CMsgPlayerBulletHit_default_instance_;
static ::_pb::Metadata file_level_metadata_cs_5fgameevents_2eproto[5];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_cs_5fgameevents_2eproto[1];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_cs_5fgameevents_2eproto = nullptr;

const uint32_t TableStruct_cs_5fgameevents_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  PROTOBUF_FIELD_OFFSET(::CMsgTEPlayerAnimEvent, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEPlayerAnimEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CMsgTEPlayerAnimEvent, _impl_.player_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEPlayerAnimEvent, _impl_.event_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEPlayerAnimEvent, _impl_.data_),
  2,
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CMsgTERadioIcon, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CMsgTERadioIcon, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CMsgTERadioIcon, _impl_.player_),
  0,
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.aim_punch_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.attack_tick_count_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.attack_tick_frac_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.render_tick_count_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.render_tick_frac_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.inaccuracy_move_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.inaccuracy_air_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets_Extra, _impl_.type_),
  0,
  1,
  2,
  3,
  4,
  5,
  6,
  7,
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.origin_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.angles_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.weapon_id_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.mode_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.seed_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.player_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.inaccuracy_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.recoil_index_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.spread_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.sound_type_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.item_def_index_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.sound_dsp_effect_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.ent_origin_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.num_bullets_remaining_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.attack_type_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.player_inair_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.player_scoped_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.tick_),
  PROTOBUF_FIELD_OFFSET(::CMsgTEFireBullets, _impl_.extra_),
  0,
  1,
  17,
  4,
  5,
  18,
  6,
  7,
  8,
  9,
  10,
  11,
  2,
  12,
  13,
  14,
  15,
  16,
  3,
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.attacker_slot_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.victim_slot_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.victim_pos_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.hit_group_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.damage_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.penetration_count_),
  PROTOBUF_FIELD_OFFSET(::CMsgPlayerBulletHit, _impl_.is_kill_),
  5,
  6,
  0,
  1,
  2,
  3,
  4,
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, 9, -1, sizeof(::CMsgTEPlayerAnimEvent)},
  { 12, 19, -1, sizeof(::CMsgTERadioIcon)},
  { 20, 34, -1, sizeof(::CMsgTEFireBullets_Extra)},
  { 42, 67, -1, sizeof(::CMsgTEFireBullets)},
  { 86, 99, -1, sizeof(::CMsgPlayerBulletHit)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::_CMsgTEPlayerAnimEvent_default_instance_._instance,
  &::_CMsgTERadioIcon_default_instance_._instance,
  &::_CMsgTEFireBullets_Extra_default_instance_._instance,
  &::_CMsgTEFireBullets_default_instance_._instance,
  &::_CMsgPlayerBulletHit_default_instance_._instance,
};

const char descriptor_table_protodef_cs_5fgameevents_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\023cs_gameevents.proto\032\026networkbasetypes."
  "proto\"N\n\025CMsgTEPlayerAnimEvent\022\030\n\006player"
  "\030\001 \001(\007:\01016777215\022\r\n\005event\030\002 \001(\r\022\014\n\004data\030"
  "\003 \001(\005\"+\n\017CMsgTERadioIcon\022\030\n\006player\030\001 \001(\007"
  ":\01016777215\"\254\005\n\021CMsgTEFireBullets\022\033\n\006orig"
  "in\030\001 \001(\0132\013.CMsgVector\022\033\n\006angles\030\002 \001(\0132\013."
  "CMsgQAngle\022\033\n\tweapon_id\030\003 \001(\r:\01016777215\022"
  "\014\n\004mode\030\004 \001(\r\022\014\n\004seed\030\005 \001(\r\022\030\n\006player\030\006 "
  "\001(\007:\01016777215\022\022\n\ninaccuracy\030\007 \001(\002\022\024\n\014rec"
  "oil_index\030\010 \001(\002\022\016\n\006spread\030\t \001(\002\022\022\n\nsound"
  "_type\030\n \001(\005\022\026\n\016item_def_index\030\013 \001(\r\022\030\n\020s"
  "ound_dsp_effect\030\014 \001(\007\022\037\n\nent_origin\030\r \001("
  "\0132\013.CMsgVector\022\035\n\025num_bullets_remaining\030"
  "\016 \001(\r\022\023\n\013attack_type\030\017 \001(\r\022\024\n\014player_ina"
  "ir\030\021 \001(\010\022\025\n\rplayer_scoped\030\022 \001(\010\022\014\n\004tick\030"
  "\023 \001(\005\022\'\n\005extra\030\020 \001(\0132\030.CMsgTEFireBullets"
  ".Extra\032\320\001\n\005Extra\022\036\n\taim_punch\030\001 \001(\0132\013.CM"
  "sgQAngle\022\031\n\021attack_tick_count\030\002 \001(\005\022\030\n\020a"
  "ttack_tick_frac\030\003 \001(\002\022\031\n\021render_tick_cou"
  "nt\030\004 \001(\005\022\030\n\020render_tick_frac\030\005 \001(\002\022\027\n\017in"
  "accuracy_move\030\006 \001(\002\022\026\n\016inaccuracy_air\030\007 "
  "\001(\002\022\014\n\004type\030\010 \001(\005\"\271\001\n\023CMsgPlayerBulletHi"
  "t\022\031\n\rattacker_slot\030\001 \001(\005:\002-1\022\027\n\013victim_s"
  "lot\030\002 \001(\005:\002-1\022\037\n\nvictim_pos\030\003 \001(\0132\013.CMsg"
  "Vector\022\021\n\thit_group\030\004 \001(\005\022\016\n\006damage\030\005 \001("
  "\005\022\031\n\021penetration_count\030\006 \001(\005\022\017\n\007is_kill\030"
  "\007 \001(\010*x\n\017ECsgoGameEvents\022\031\n\024GE_PlayerAni"
  "mEventId\020\302\003\022\030\n\023GE_RadioIconEventId\020\303\003\022\025\n"
  "\020GE_FireBulletsId\020\304\003\022\031\n\024GE_PlayerBulletH"
  "itId\020\305\003"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_cs_5fgameevents_2eproto_deps[1] = {
  &::descriptor_table_networkbasetypes_2eproto,
};
static ::_pbi::once_flag descriptor_table_cs_5fgameevents_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_cs_5fgameevents_2eproto = {
    false, false, 1167, descriptor_table_protodef_cs_5fgameevents_2eproto,
    "cs_gameevents.proto",
    &descriptor_table_cs_5fgameevents_2eproto_once, descriptor_table_cs_5fgameevents_2eproto_deps, 1, 5,
    schemas, file_default_instances, TableStruct_cs_5fgameevents_2eproto::offsets,
    file_level_metadata_cs_5fgameevents_2eproto, file_level_enum_descriptors_cs_5fgameevents_2eproto,
    file_level_service_descriptors_cs_5fgameevents_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_cs_5fgameevents_2eproto_getter() {
  return &descriptor_table_cs_5fgameevents_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_cs_5fgameevents_2eproto(&descriptor_table_cs_5fgameevents_2eproto);
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ECsgoGameEvents_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_cs_5fgameevents_2eproto);
  return file_level_enum_descriptors_cs_5fgameevents_2eproto[0];
}
bool ECsgoGameEvents_IsValid(int value) {
  switch (value) {
    case 450:
    case 451:
    case 452:
    case 453:
      return true;
    default:
      return false;
  }
}


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

class CMsgTEPlayerAnimEvent::_Internal {
 public:
  using HasBits = decltype(std::declval<CMsgTEPlayerAnimEvent>()._impl_._has_bits_);
  static void set_has_player(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_event(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_data(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

CMsgTEPlayerAnimEvent::CMsgTEPlayerAnimEvent(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CMsgTEPlayerAnimEvent)
}
CMsgTEPlayerAnimEvent::CMsgTEPlayerAnimEvent(const CMsgTEPlayerAnimEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CMsgTEPlayerAnimEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.event_){}
    , decltype(_impl_.data_){}
    , decltype(_impl_.player_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.event_, &from._impl_.event_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.player_) -
    reinterpret_cast<char*>(&_impl_.event_)) + sizeof(_impl_.player_));
  // @@protoc_insertion_point(copy_constructor:CMsgTEPlayerAnimEvent)
}

inline void CMsgTEPlayerAnimEvent::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.event_){0u}
    , decltype(_impl_.data_){0}
    , decltype(_impl_.player_){16777215u}
  };
}

CMsgTEPlayerAnimEvent::~CMsgTEPlayerAnimEvent() {
  // @@protoc_insertion_point(destructor:CMsgTEPlayerAnimEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CMsgTEPlayerAnimEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CMsgTEPlayerAnimEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CMsgTEPlayerAnimEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgTEPlayerAnimEvent)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    ::memset(&_impl_.event_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.data_) -
        reinterpret_cast<char*>(&_impl_.event_)) + sizeof(_impl_.data_));
    _impl_.player_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CMsgTEPlayerAnimEvent::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional fixed32 player = 1 [default = 16777215];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_player(&has_bits);
          _impl_.player_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 event = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_event(&has_bits);
          _impl_.event_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 data = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_data(&has_bits);
          _impl_.data_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CMsgTEPlayerAnimEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CMsgTEPlayerAnimEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed32 player = 1 [default = 16777215];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(1, this->_internal_player(), target);
  }

  // optional uint32 event = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_event(), target);
  }

  // optional int32 data = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_data(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgTEPlayerAnimEvent)
  return target;
}

size_t CMsgTEPlayerAnimEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CMsgTEPlayerAnimEvent)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    // optional uint32 event = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_event());
    }

    // optional int32 data = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_data());
    }

    // optional fixed32 player = 1 [default = 16777215];
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CMsgTEPlayerAnimEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CMsgTEPlayerAnimEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CMsgTEPlayerAnimEvent::GetClassData() const { return &_class_data_; }


void CMsgTEPlayerAnimEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CMsgTEPlayerAnimEvent*>(&to_msg);
  auto& from = static_cast<const CMsgTEPlayerAnimEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgTEPlayerAnimEvent)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.event_ = from._impl_.event_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.data_ = from._impl_.data_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.player_ = from._impl_.player_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CMsgTEPlayerAnimEvent::CopyFrom(const CMsgTEPlayerAnimEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CMsgTEPlayerAnimEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CMsgTEPlayerAnimEvent::IsInitialized() const {
  return true;
}

void CMsgTEPlayerAnimEvent::InternalSwap(CMsgTEPlayerAnimEvent* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgTEPlayerAnimEvent, _impl_.data_)
      + sizeof(CMsgTEPlayerAnimEvent::_impl_.data_)
      - PROTOBUF_FIELD_OFFSET(CMsgTEPlayerAnimEvent, _impl_.event_)>(
          reinterpret_cast<char*>(&_impl_.event_),
          reinterpret_cast<char*>(&other->_impl_.event_));
  swap(_impl_.player_, other->_impl_.player_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CMsgTEPlayerAnimEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_cs_5fgameevents_2eproto_getter, &descriptor_table_cs_5fgameevents_2eproto_once,
      file_level_metadata_cs_5fgameevents_2eproto[0]);
}

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

class CMsgTERadioIcon::_Internal {
 public:
  using HasBits = decltype(std::declval<CMsgTERadioIcon>()._impl_._has_bits_);
  static void set_has_player(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CMsgTERadioIcon::CMsgTERadioIcon(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CMsgTERadioIcon)
}
CMsgTERadioIcon::CMsgTERadioIcon(const CMsgTERadioIcon& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CMsgTERadioIcon* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.player_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.player_ = from._impl_.player_;
  // @@protoc_insertion_point(copy_constructor:CMsgTERadioIcon)
}

inline void CMsgTERadioIcon::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.player_){16777215u}
  };
}

CMsgTERadioIcon::~CMsgTERadioIcon() {
  // @@protoc_insertion_point(destructor:CMsgTERadioIcon)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CMsgTERadioIcon::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CMsgTERadioIcon::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CMsgTERadioIcon::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgTERadioIcon)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.player_ = 16777215u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CMsgTERadioIcon::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional fixed32 player = 1 [default = 16777215];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_player(&has_bits);
          _impl_.player_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CMsgTERadioIcon::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CMsgTERadioIcon)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed32 player = 1 [default = 16777215];
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(1, this->_internal_player(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgTERadioIcon)
  return target;
}

size_t CMsgTERadioIcon::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CMsgTERadioIcon)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // optional fixed32 player = 1 [default = 16777215];
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 4;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CMsgTERadioIcon::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CMsgTERadioIcon::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CMsgTERadioIcon::GetClassData() const { return &_class_data_; }


void CMsgTERadioIcon::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CMsgTERadioIcon*>(&to_msg);
  auto& from = static_cast<const CMsgTERadioIcon&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgTERadioIcon)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_has_player()) {
    _this->_internal_set_player(from._internal_player());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CMsgTERadioIcon::CopyFrom(const CMsgTERadioIcon& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CMsgTERadioIcon)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CMsgTERadioIcon::IsInitialized() const {
  return true;
}

void CMsgTERadioIcon::InternalSwap(CMsgTERadioIcon* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.player_, other->_impl_.player_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CMsgTERadioIcon::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_cs_5fgameevents_2eproto_getter, &descriptor_table_cs_5fgameevents_2eproto_once,
      file_level_metadata_cs_5fgameevents_2eproto[1]);
}

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

class CMsgTEFireBullets_Extra::_Internal {
 public:
  using HasBits = decltype(std::declval<CMsgTEFireBullets_Extra>()._impl_._has_bits_);
  static const ::CMsgQAngle& aim_punch(const CMsgTEFireBullets_Extra* msg);
  static void set_has_aim_punch(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_attack_tick_count(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_attack_tick_frac(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_render_tick_count(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_render_tick_frac(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_inaccuracy_move(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_inaccuracy_air(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_type(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
};

const ::CMsgQAngle&
CMsgTEFireBullets_Extra::_Internal::aim_punch(const CMsgTEFireBullets_Extra* msg) {
  return *msg->_impl_.aim_punch_;
}
void CMsgTEFireBullets_Extra::clear_aim_punch() {
  if (_impl_.aim_punch_ != nullptr) _impl_.aim_punch_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CMsgTEFireBullets_Extra::CMsgTEFireBullets_Extra(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CMsgTEFireBullets.Extra)
}
CMsgTEFireBullets_Extra::CMsgTEFireBullets_Extra(const CMsgTEFireBullets_Extra& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CMsgTEFireBullets_Extra* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.aim_punch_){nullptr}
    , decltype(_impl_.attack_tick_count_){}
    , decltype(_impl_.attack_tick_frac_){}
    , decltype(_impl_.render_tick_count_){}
    , decltype(_impl_.render_tick_frac_){}
    , decltype(_impl_.inaccuracy_move_){}
    , decltype(_impl_.inaccuracy_air_){}
    , decltype(_impl_.type_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_aim_punch()) {
    _this->_impl_.aim_punch_ = new ::CMsgQAngle(*from._impl_.aim_punch_);
  }
  ::memcpy(&_impl_.attack_tick_count_, &from._impl_.attack_tick_count_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.type_) -
    reinterpret_cast<char*>(&_impl_.attack_tick_count_)) + sizeof(_impl_.type_));
  // @@protoc_insertion_point(copy_constructor:CMsgTEFireBullets.Extra)
}

inline void CMsgTEFireBullets_Extra::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.aim_punch_){nullptr}
    , decltype(_impl_.attack_tick_count_){0}
    , decltype(_impl_.attack_tick_frac_){0}
    , decltype(_impl_.render_tick_count_){0}
    , decltype(_impl_.render_tick_frac_){0}
    , decltype(_impl_.inaccuracy_move_){0}
    , decltype(_impl_.inaccuracy_air_){0}
    , decltype(_impl_.type_){0}
  };
}

CMsgTEFireBullets_Extra::~CMsgTEFireBullets_Extra() {
  // @@protoc_insertion_point(destructor:CMsgTEFireBullets.Extra)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CMsgTEFireBullets_Extra::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.aim_punch_;
}

void CMsgTEFireBullets_Extra::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CMsgTEFireBullets_Extra::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgTEFireBullets.Extra)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    GOOGLE_DCHECK(_impl_.aim_punch_ != nullptr);
    _impl_.aim_punch_->Clear();
  }
  if (cached_has_bits & 0x000000feu) {
    ::memset(&_impl_.attack_tick_count_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.type_) -
        reinterpret_cast<char*>(&_impl_.attack_tick_count_)) + sizeof(_impl_.type_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CMsgTEFireBullets_Extra::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional .CMsgQAngle aim_punch = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_aim_punch(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 attack_tick_count = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_attack_tick_count(&has_bits);
          _impl_.attack_tick_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float attack_tick_frac = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_attack_tick_frac(&has_bits);
          _impl_.attack_tick_frac_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional int32 render_tick_count = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_render_tick_count(&has_bits);
          _impl_.render_tick_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float render_tick_frac = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_render_tick_frac(&has_bits);
          _impl_.render_tick_frac_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float inaccuracy_move = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 53)) {
          _Internal::set_has_inaccuracy_move(&has_bits);
          _impl_.inaccuracy_move_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float inaccuracy_air = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 61)) {
          _Internal::set_has_inaccuracy_air(&has_bits);
          _impl_.inaccuracy_air_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional int32 type = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_type(&has_bits);
          _impl_.type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CMsgTEFireBullets_Extra::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CMsgTEFireBullets.Extra)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional .CMsgQAngle aim_punch = 1;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::aim_punch(this),
        _Internal::aim_punch(this).GetCachedSize(), target, stream);
  }

  // optional int32 attack_tick_count = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_attack_tick_count(), target);
  }

  // optional float attack_tick_frac = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_attack_tick_frac(), target);
  }

  // optional int32 render_tick_count = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_render_tick_count(), target);
  }

  // optional float render_tick_frac = 5;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_render_tick_frac(), target);
  }

  // optional float inaccuracy_move = 6;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(6, this->_internal_inaccuracy_move(), target);
  }

  // optional float inaccuracy_air = 7;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(7, this->_internal_inaccuracy_air(), target);
  }

  // optional int32 type = 8;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(8, this->_internal_type(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgTEFireBullets.Extra)
  return target;
}

size_t CMsgTEFireBullets_Extra::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CMsgTEFireBullets.Extra)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional .CMsgQAngle aim_punch = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.aim_punch_);
    }

    // optional int32 attack_tick_count = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attack_tick_count());
    }

    // optional float attack_tick_frac = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional int32 render_tick_count = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_render_tick_count());
    }

    // optional float render_tick_frac = 5;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 4;
    }

    // optional float inaccuracy_move = 6;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 4;
    }

    // optional float inaccuracy_air = 7;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 + 4;
    }

    // optional int32 type = 8;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_type());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CMsgTEFireBullets_Extra::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CMsgTEFireBullets_Extra::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CMsgTEFireBullets_Extra::GetClassData() const { return &_class_data_; }


void CMsgTEFireBullets_Extra::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CMsgTEFireBullets_Extra*>(&to_msg);
  auto& from = static_cast<const CMsgTEFireBullets_Extra&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgTEFireBullets.Extra)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_aim_punch()->::CMsgQAngle::MergeFrom(
          from._internal_aim_punch());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.attack_tick_count_ = from._impl_.attack_tick_count_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.attack_tick_frac_ = from._impl_.attack_tick_frac_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.render_tick_count_ = from._impl_.render_tick_count_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.render_tick_frac_ = from._impl_.render_tick_frac_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.inaccuracy_move_ = from._impl_.inaccuracy_move_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.inaccuracy_air_ = from._impl_.inaccuracy_air_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.type_ = from._impl_.type_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CMsgTEFireBullets_Extra::CopyFrom(const CMsgTEFireBullets_Extra& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CMsgTEFireBullets.Extra)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CMsgTEFireBullets_Extra::IsInitialized() const {
  return true;
}

void CMsgTEFireBullets_Extra::InternalSwap(CMsgTEFireBullets_Extra* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgTEFireBullets_Extra, _impl_.type_)
      + sizeof(CMsgTEFireBullets_Extra::_impl_.type_)
      - PROTOBUF_FIELD_OFFSET(CMsgTEFireBullets_Extra, _impl_.aim_punch_)>(
          reinterpret_cast<char*>(&_impl_.aim_punch_),
          reinterpret_cast<char*>(&other->_impl_.aim_punch_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CMsgTEFireBullets_Extra::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_cs_5fgameevents_2eproto_getter, &descriptor_table_cs_5fgameevents_2eproto_once,
      file_level_metadata_cs_5fgameevents_2eproto[2]);
}

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

class CMsgTEFireBullets::_Internal {
 public:
  using HasBits = decltype(std::declval<CMsgTEFireBullets>()._impl_._has_bits_);
  static const ::CMsgVector& origin(const CMsgTEFireBullets* msg);
  static void set_has_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgQAngle& angles(const CMsgTEFireBullets* msg);
  static void set_has_angles(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_weapon_id(HasBits* has_bits) {
    (*has_bits)[0] |= 131072u;
  }
  static void set_has_mode(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_seed(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_player(HasBits* has_bits) {
    (*has_bits)[0] |= 262144u;
  }
  static void set_has_inaccuracy(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_recoil_index(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_spread(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_sound_type(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_item_def_index(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_sound_dsp_effect(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static const ::CMsgVector& ent_origin(const CMsgTEFireBullets* msg);
  static void set_has_ent_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_num_bullets_remaining(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_attack_type(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static void set_has_player_inair(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_player_scoped(HasBits* has_bits) {
    (*has_bits)[0] |= 32768u;
  }
  static void set_has_tick(HasBits* has_bits) {
    (*has_bits)[0] |= 65536u;
  }
  static const ::CMsgTEFireBullets_Extra& extra(const CMsgTEFireBullets* msg);
  static void set_has_extra(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

const ::CMsgVector&
CMsgTEFireBullets::_Internal::origin(const CMsgTEFireBullets* msg) {
  return *msg->_impl_.origin_;
}
const ::CMsgQAngle&
CMsgTEFireBullets::_Internal::angles(const CMsgTEFireBullets* msg) {
  return *msg->_impl_.angles_;
}
const ::CMsgVector&
CMsgTEFireBullets::_Internal::ent_origin(const CMsgTEFireBullets* msg) {
  return *msg->_impl_.ent_origin_;
}
const ::CMsgTEFireBullets_Extra&
CMsgTEFireBullets::_Internal::extra(const CMsgTEFireBullets* msg) {
  return *msg->_impl_.extra_;
}
void CMsgTEFireBullets::clear_origin() {
  if (_impl_.origin_ != nullptr) _impl_.origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CMsgTEFireBullets::clear_angles() {
  if (_impl_.angles_ != nullptr) _impl_.angles_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
void CMsgTEFireBullets::clear_ent_origin() {
  if (_impl_.ent_origin_ != nullptr) _impl_.ent_origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
CMsgTEFireBullets::CMsgTEFireBullets(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CMsgTEFireBullets)
}
CMsgTEFireBullets::CMsgTEFireBullets(const CMsgTEFireBullets& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CMsgTEFireBullets* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.origin_){nullptr}
    , decltype(_impl_.angles_){nullptr}
    , decltype(_impl_.ent_origin_){nullptr}
    , decltype(_impl_.extra_){nullptr}
    , decltype(_impl_.mode_){}
    , decltype(_impl_.seed_){}
    , decltype(_impl_.inaccuracy_){}
    , decltype(_impl_.recoil_index_){}
    , decltype(_impl_.spread_){}
    , decltype(_impl_.sound_type_){}
    , decltype(_impl_.item_def_index_){}
    , decltype(_impl_.sound_dsp_effect_){}
    , decltype(_impl_.num_bullets_remaining_){}
    , decltype(_impl_.attack_type_){}
    , decltype(_impl_.player_inair_){}
    , decltype(_impl_.player_scoped_){}
    , decltype(_impl_.tick_){}
    , decltype(_impl_.weapon_id_){}
    , decltype(_impl_.player_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_origin()) {
    _this->_impl_.origin_ = new ::CMsgVector(*from._impl_.origin_);
  }
  if (from._internal_has_angles()) {
    _this->_impl_.angles_ = new ::CMsgQAngle(*from._impl_.angles_);
  }
  if (from._internal_has_ent_origin()) {
    _this->_impl_.ent_origin_ = new ::CMsgVector(*from._impl_.ent_origin_);
  }
  if (from._internal_has_extra()) {
    _this->_impl_.extra_ = new ::CMsgTEFireBullets_Extra(*from._impl_.extra_);
  }
  ::memcpy(&_impl_.mode_, &from._impl_.mode_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.player_) -
    reinterpret_cast<char*>(&_impl_.mode_)) + sizeof(_impl_.player_));
  // @@protoc_insertion_point(copy_constructor:CMsgTEFireBullets)
}

inline void CMsgTEFireBullets::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.origin_){nullptr}
    , decltype(_impl_.angles_){nullptr}
    , decltype(_impl_.ent_origin_){nullptr}
    , decltype(_impl_.extra_){nullptr}
    , decltype(_impl_.mode_){0u}
    , decltype(_impl_.seed_){0u}
    , decltype(_impl_.inaccuracy_){0}
    , decltype(_impl_.recoil_index_){0}
    , decltype(_impl_.spread_){0}
    , decltype(_impl_.sound_type_){0}
    , decltype(_impl_.item_def_index_){0u}
    , decltype(_impl_.sound_dsp_effect_){0u}
    , decltype(_impl_.num_bullets_remaining_){0u}
    , decltype(_impl_.attack_type_){0u}
    , decltype(_impl_.player_inair_){false}
    , decltype(_impl_.player_scoped_){false}
    , decltype(_impl_.tick_){0}
    , decltype(_impl_.weapon_id_){16777215u}
    , decltype(_impl_.player_){16777215u}
  };
}

CMsgTEFireBullets::~CMsgTEFireBullets() {
  // @@protoc_insertion_point(destructor:CMsgTEFireBullets)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CMsgTEFireBullets::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.origin_;
  if (this != internal_default_instance()) delete _impl_.angles_;
  if (this != internal_default_instance()) delete _impl_.ent_origin_;
  if (this != internal_default_instance()) delete _impl_.extra_;
}

void CMsgTEFireBullets::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CMsgTEFireBullets::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgTEFireBullets)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.origin_ != nullptr);
      _impl_.origin_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.angles_ != nullptr);
      _impl_.angles_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.ent_origin_ != nullptr);
      _impl_.ent_origin_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.extra_ != nullptr);
      _impl_.extra_->Clear();
    }
  }
  if (cached_has_bits & 0x000000f0u) {
    ::memset(&_impl_.mode_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.recoil_index_) -
        reinterpret_cast<char*>(&_impl_.mode_)) + sizeof(_impl_.recoil_index_));
  }
  if (cached_has_bits & 0x0000ff00u) {
    ::memset(&_impl_.spread_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.player_scoped_) -
        reinterpret_cast<char*>(&_impl_.spread_)) + sizeof(_impl_.player_scoped_));
  }
  if (cached_has_bits & 0x00070000u) {
    _impl_.tick_ = 0;
    _impl_.weapon_id_ = 16777215u;
    _impl_.player_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CMsgTEFireBullets::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional .CMsgVector origin = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_origin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgQAngle angles = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_angles(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 weapon_id = 3 [default = 16777215];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_weapon_id(&has_bits);
          _impl_.weapon_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 mode = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_mode(&has_bits);
          _impl_.mode_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 seed = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_seed(&has_bits);
          _impl_.seed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 player = 6 [default = 16777215];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 53)) {
          _Internal::set_has_player(&has_bits);
          _impl_.player_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional float inaccuracy = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 61)) {
          _Internal::set_has_inaccuracy(&has_bits);
          _impl_.inaccuracy_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float recoil_index = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 69)) {
          _Internal::set_has_recoil_index(&has_bits);
          _impl_.recoil_index_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float spread = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 77)) {
          _Internal::set_has_spread(&has_bits);
          _impl_.spread_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional int32 sound_type = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_sound_type(&has_bits);
          _impl_.sound_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 item_def_index = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_item_def_index(&has_bits);
          _impl_.item_def_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 sound_dsp_effect = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 101)) {
          _Internal::set_has_sound_dsp_effect(&has_bits);
          _impl_.sound_dsp_effect_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector ent_origin = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          ptr = ctx->ParseMessage(_internal_mutable_ent_origin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 num_bullets_remaining = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 112)) {
          _Internal::set_has_num_bullets_remaining(&has_bits);
          _impl_.num_bullets_remaining_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 attack_type = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 120)) {
          _Internal::set_has_attack_type(&has_bits);
          _impl_.attack_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgTEFireBullets.Extra extra = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          ptr = ctx->ParseMessage(_internal_mutable_extra(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool player_inair = 17;
      case 17:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 136)) {
          _Internal::set_has_player_inair(&has_bits);
          _impl_.player_inair_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool player_scoped = 18;
      case 18:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 144)) {
          _Internal::set_has_player_scoped(&has_bits);
          _impl_.player_scoped_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 tick = 19;
      case 19:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 152)) {
          _Internal::set_has_tick(&has_bits);
          _impl_.tick_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CMsgTEFireBullets::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CMsgTEFireBullets)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional .CMsgVector origin = 1;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::origin(this),
        _Internal::origin(this).GetCachedSize(), target, stream);
  }

  // optional .CMsgQAngle angles = 2;
  if (cached_has_bits & 0x00000002u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::angles(this),
        _Internal::angles(this).GetCachedSize(), target, stream);
  }

  // optional uint32 weapon_id = 3 [default = 16777215];
  if (cached_has_bits & 0x00020000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_weapon_id(), target);
  }

  // optional uint32 mode = 4;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_mode(), target);
  }

  // optional uint32 seed = 5;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(5, this->_internal_seed(), target);
  }

  // optional fixed32 player = 6 [default = 16777215];
  if (cached_has_bits & 0x00040000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(6, this->_internal_player(), target);
  }

  // optional float inaccuracy = 7;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(7, this->_internal_inaccuracy(), target);
  }

  // optional float recoil_index = 8;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(8, this->_internal_recoil_index(), target);
  }

  // optional float spread = 9;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(9, this->_internal_spread(), target);
  }

  // optional int32 sound_type = 10;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(10, this->_internal_sound_type(), target);
  }

  // optional uint32 item_def_index = 11;
  if (cached_has_bits & 0x00000400u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(11, this->_internal_item_def_index(), target);
  }

  // optional fixed32 sound_dsp_effect = 12;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(12, this->_internal_sound_dsp_effect(), target);
  }

  // optional .CMsgVector ent_origin = 13;
  if (cached_has_bits & 0x00000004u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(13, _Internal::ent_origin(this),
        _Internal::ent_origin(this).GetCachedSize(), target, stream);
  }

  // optional uint32 num_bullets_remaining = 14;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(14, this->_internal_num_bullets_remaining(), target);
  }

  // optional uint32 attack_type = 15;
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(15, this->_internal_attack_type(), target);
  }

  // optional .CMsgTEFireBullets.Extra extra = 16;
  if (cached_has_bits & 0x00000008u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(16, _Internal::extra(this),
        _Internal::extra(this).GetCachedSize(), target, stream);
  }

  // optional bool player_inair = 17;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(17, this->_internal_player_inair(), target);
  }

  // optional bool player_scoped = 18;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(18, this->_internal_player_scoped(), target);
  }

  // optional int32 tick = 19;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(19, this->_internal_tick(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgTEFireBullets)
  return target;
}

size_t CMsgTEFireBullets::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CMsgTEFireBullets)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional .CMsgVector origin = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.origin_);
    }

    // optional .CMsgQAngle angles = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.angles_);
    }

    // optional .CMsgVector ent_origin = 13;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.ent_origin_);
    }

    // optional .CMsgTEFireBullets.Extra extra = 16;
    if (cached_has_bits & 0x00000008u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.extra_);
    }

    // optional uint32 mode = 4;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_mode());
    }

    // optional uint32 seed = 5;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_seed());
    }

    // optional float inaccuracy = 7;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 + 4;
    }

    // optional float recoil_index = 8;
    if (cached_has_bits & 0x00000080u) {
      total_size += 1 + 4;
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional float spread = 9;
    if (cached_has_bits & 0x00000100u) {
      total_size += 1 + 4;
    }

    // optional int32 sound_type = 10;
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_sound_type());
    }

    // optional uint32 item_def_index = 11;
    if (cached_has_bits & 0x00000400u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_item_def_index());
    }

    // optional fixed32 sound_dsp_effect = 12;
    if (cached_has_bits & 0x00000800u) {
      total_size += 1 + 4;
    }

    // optional uint32 num_bullets_remaining = 14;
    if (cached_has_bits & 0x00001000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_num_bullets_remaining());
    }

    // optional uint32 attack_type = 15;
    if (cached_has_bits & 0x00002000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_attack_type());
    }

    // optional bool player_inair = 17;
    if (cached_has_bits & 0x00004000u) {
      total_size += 2 + 1;
    }

    // optional bool player_scoped = 18;
    if (cached_has_bits & 0x00008000u) {
      total_size += 2 + 1;
    }

  }
  if (cached_has_bits & 0x00070000u) {
    // optional int32 tick = 19;
    if (cached_has_bits & 0x00010000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::Int32Size(
          this->_internal_tick());
    }

    // optional uint32 weapon_id = 3 [default = 16777215];
    if (cached_has_bits & 0x00020000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_weapon_id());
    }

    // optional fixed32 player = 6 [default = 16777215];
    if (cached_has_bits & 0x00040000u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CMsgTEFireBullets::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CMsgTEFireBullets::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CMsgTEFireBullets::GetClassData() const { return &_class_data_; }


void CMsgTEFireBullets::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CMsgTEFireBullets*>(&to_msg);
  auto& from = static_cast<const CMsgTEFireBullets&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgTEFireBullets)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_origin()->::CMsgVector::MergeFrom(
          from._internal_origin());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_angles()->::CMsgQAngle::MergeFrom(
          from._internal_angles());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_ent_origin()->::CMsgVector::MergeFrom(
          from._internal_ent_origin());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_extra()->::CMsgTEFireBullets_Extra::MergeFrom(
          from._internal_extra());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.mode_ = from._impl_.mode_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.seed_ = from._impl_.seed_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.inaccuracy_ = from._impl_.inaccuracy_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.recoil_index_ = from._impl_.recoil_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.spread_ = from._impl_.spread_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.sound_type_ = from._impl_.sound_type_;
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_impl_.item_def_index_ = from._impl_.item_def_index_;
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.sound_dsp_effect_ = from._impl_.sound_dsp_effect_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.num_bullets_remaining_ = from._impl_.num_bullets_remaining_;
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.attack_type_ = from._impl_.attack_type_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.player_inair_ = from._impl_.player_inair_;
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_impl_.player_scoped_ = from._impl_.player_scoped_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00070000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_impl_.tick_ = from._impl_.tick_;
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_impl_.weapon_id_ = from._impl_.weapon_id_;
    }
    if (cached_has_bits & 0x00040000u) {
      _this->_impl_.player_ = from._impl_.player_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CMsgTEFireBullets::CopyFrom(const CMsgTEFireBullets& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CMsgTEFireBullets)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CMsgTEFireBullets::IsInitialized() const {
  return true;
}

void CMsgTEFireBullets::InternalSwap(CMsgTEFireBullets* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgTEFireBullets, _impl_.tick_)
      + sizeof(CMsgTEFireBullets::_impl_.tick_)
      - PROTOBUF_FIELD_OFFSET(CMsgTEFireBullets, _impl_.origin_)>(
          reinterpret_cast<char*>(&_impl_.origin_),
          reinterpret_cast<char*>(&other->_impl_.origin_));
  swap(_impl_.weapon_id_, other->_impl_.weapon_id_);
  swap(_impl_.player_, other->_impl_.player_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CMsgTEFireBullets::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_cs_5fgameevents_2eproto_getter, &descriptor_table_cs_5fgameevents_2eproto_once,
      file_level_metadata_cs_5fgameevents_2eproto[3]);
}

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

class CMsgPlayerBulletHit::_Internal {
 public:
  using HasBits = decltype(std::declval<CMsgPlayerBulletHit>()._impl_._has_bits_);
  static void set_has_attacker_slot(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_victim_slot(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static const ::CMsgVector& victim_pos(const CMsgPlayerBulletHit* msg);
  static void set_has_victim_pos(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_hit_group(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_damage(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_penetration_count(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_is_kill(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

const ::CMsgVector&
CMsgPlayerBulletHit::_Internal::victim_pos(const CMsgPlayerBulletHit* msg) {
  return *msg->_impl_.victim_pos_;
}
void CMsgPlayerBulletHit::clear_victim_pos() {
  if (_impl_.victim_pos_ != nullptr) _impl_.victim_pos_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CMsgPlayerBulletHit::CMsgPlayerBulletHit(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CMsgPlayerBulletHit)
}
CMsgPlayerBulletHit::CMsgPlayerBulletHit(const CMsgPlayerBulletHit& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CMsgPlayerBulletHit* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.victim_pos_){nullptr}
    , decltype(_impl_.hit_group_){}
    , decltype(_impl_.damage_){}
    , decltype(_impl_.penetration_count_){}
    , decltype(_impl_.is_kill_){}
    , decltype(_impl_.attacker_slot_){}
    , decltype(_impl_.victim_slot_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_victim_pos()) {
    _this->_impl_.victim_pos_ = new ::CMsgVector(*from._impl_.victim_pos_);
  }
  ::memcpy(&_impl_.hit_group_, &from._impl_.hit_group_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.victim_slot_) -
    reinterpret_cast<char*>(&_impl_.hit_group_)) + sizeof(_impl_.victim_slot_));
  // @@protoc_insertion_point(copy_constructor:CMsgPlayerBulletHit)
}

inline void CMsgPlayerBulletHit::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.victim_pos_){nullptr}
    , decltype(_impl_.hit_group_){0}
    , decltype(_impl_.damage_){0}
    , decltype(_impl_.penetration_count_){0}
    , decltype(_impl_.is_kill_){false}
    , decltype(_impl_.attacker_slot_){-1}
    , decltype(_impl_.victim_slot_){-1}
  };
}

CMsgPlayerBulletHit::~CMsgPlayerBulletHit() {
  // @@protoc_insertion_point(destructor:CMsgPlayerBulletHit)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CMsgPlayerBulletHit::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.victim_pos_;
}

void CMsgPlayerBulletHit::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CMsgPlayerBulletHit::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgPlayerBulletHit)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    GOOGLE_DCHECK(_impl_.victim_pos_ != nullptr);
    _impl_.victim_pos_->Clear();
  }
  if (cached_has_bits & 0x0000007eu) {
    ::memset(&_impl_.hit_group_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.is_kill_) -
        reinterpret_cast<char*>(&_impl_.hit_group_)) + sizeof(_impl_.is_kill_));
    _impl_.attacker_slot_ = -1;
    _impl_.victim_slot_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CMsgPlayerBulletHit::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional int32 attacker_slot = 1 [default = -1];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_attacker_slot(&has_bits);
          _impl_.attacker_slot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 victim_slot = 2 [default = -1];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_victim_slot(&has_bits);
          _impl_.victim_slot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector victim_pos = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_victim_pos(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 hit_group = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_hit_group(&has_bits);
          _impl_.hit_group_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 damage = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_damage(&has_bits);
          _impl_.damage_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 penetration_count = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_penetration_count(&has_bits);
          _impl_.penetration_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool is_kill = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_is_kill(&has_bits);
          _impl_.is_kill_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CMsgPlayerBulletHit::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CMsgPlayerBulletHit)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 attacker_slot = 1 [default = -1];
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_attacker_slot(), target);
  }

  // optional int32 victim_slot = 2 [default = -1];
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_victim_slot(), target);
  }

  // optional .CMsgVector victim_pos = 3;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::victim_pos(this),
        _Internal::victim_pos(this).GetCachedSize(), target, stream);
  }

  // optional int32 hit_group = 4;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_hit_group(), target);
  }

  // optional int32 damage = 5;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_damage(), target);
  }

  // optional int32 penetration_count = 6;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_penetration_count(), target);
  }

  // optional bool is_kill = 7;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(7, this->_internal_is_kill(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgPlayerBulletHit)
  return target;
}

size_t CMsgPlayerBulletHit::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CMsgPlayerBulletHit)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    // optional .CMsgVector victim_pos = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.victim_pos_);
    }

    // optional int32 hit_group = 4;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_hit_group());
    }

    // optional int32 damage = 5;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_damage());
    }

    // optional int32 penetration_count = 6;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_penetration_count());
    }

    // optional bool is_kill = 7;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 1;
    }

    // optional int32 attacker_slot = 1 [default = -1];
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attacker_slot());
    }

    // optional int32 victim_slot = 2 [default = -1];
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_victim_slot());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CMsgPlayerBulletHit::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CMsgPlayerBulletHit::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CMsgPlayerBulletHit::GetClassData() const { return &_class_data_; }


void CMsgPlayerBulletHit::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CMsgPlayerBulletHit*>(&to_msg);
  auto& from = static_cast<const CMsgPlayerBulletHit&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgPlayerBulletHit)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000007fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_victim_pos()->::CMsgVector::MergeFrom(
          from._internal_victim_pos());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.hit_group_ = from._impl_.hit_group_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.damage_ = from._impl_.damage_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.penetration_count_ = from._impl_.penetration_count_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.is_kill_ = from._impl_.is_kill_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.attacker_slot_ = from._impl_.attacker_slot_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.victim_slot_ = from._impl_.victim_slot_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CMsgPlayerBulletHit::CopyFrom(const CMsgPlayerBulletHit& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CMsgPlayerBulletHit)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CMsgPlayerBulletHit::IsInitialized() const {
  return true;
}

void CMsgPlayerBulletHit::InternalSwap(CMsgPlayerBulletHit* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgPlayerBulletHit, _impl_.is_kill_)
      + sizeof(CMsgPlayerBulletHit::_impl_.is_kill_)
      - PROTOBUF_FIELD_OFFSET(CMsgPlayerBulletHit, _impl_.victim_pos_)>(
          reinterpret_cast<char*>(&_impl_.victim_pos_),
          reinterpret_cast<char*>(&other->_impl_.victim_pos_));
  swap(_impl_.attacker_slot_, other->_impl_.attacker_slot_);
  swap(_impl_.victim_slot_, other->_impl_.victim_slot_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CMsgPlayerBulletHit::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_cs_5fgameevents_2eproto_getter, &descriptor_table_cs_5fgameevents_2eproto_once,
      file_level_metadata_cs_5fgameevents_2eproto[4]);
}

// @@protoc_insertion_point(namespace_scope)
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::CMsgTEPlayerAnimEvent*
Arena::CreateMaybeMessage< ::CMsgTEPlayerAnimEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CMsgTEPlayerAnimEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::CMsgTERadioIcon*
Arena::CreateMaybeMessage< ::CMsgTERadioIcon >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CMsgTERadioIcon >(arena);
}
template<> PROTOBUF_NOINLINE ::CMsgTEFireBullets_Extra*
Arena::CreateMaybeMessage< ::CMsgTEFireBullets_Extra >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CMsgTEFireBullets_Extra >(arena);
}
template<> PROTOBUF_NOINLINE ::CMsgTEFireBullets*
Arena::CreateMaybeMessage< ::CMsgTEFireBullets >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CMsgTEFireBullets >(arena);
}
template<> PROTOBUF_NOINLINE ::CMsgPlayerBulletHit*
Arena::CreateMaybeMessage< ::CMsgPlayerBulletHit >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CMsgPlayerBulletHit >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
