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

#include "usermessages.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 CUserMessageAchievementEvent::CUserMessageAchievementEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.achievement_)*/0u} {}
struct CUserMessageAchievementEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageAchievementEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageAchievementEventDefaultTypeInternal() {}
  union {
    CUserMessageAchievementEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageAchievementEventDefaultTypeInternal _CUserMessageAchievementEvent_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCloseCaption::CUserMessageCloseCaption(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.hash_)*/0u
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.from_player_)*/false
  , /*decltype(_impl_.ent_index_)*/-1} {}
struct CUserMessageCloseCaptionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCloseCaptionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCloseCaptionDefaultTypeInternal() {}
  union {
    CUserMessageCloseCaption _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCloseCaptionDefaultTypeInternal _CUserMessageCloseCaption_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCloseCaptionDirect::CUserMessageCloseCaptionDirect(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.hash_)*/0u
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.from_player_)*/false
  , /*decltype(_impl_.ent_index_)*/-1} {}
struct CUserMessageCloseCaptionDirectDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCloseCaptionDirectDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCloseCaptionDirectDefaultTypeInternal() {}
  union {
    CUserMessageCloseCaptionDirect _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCloseCaptionDirectDefaultTypeInternal _CUserMessageCloseCaptionDirect_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCloseCaptionPlaceholder::CUserMessageCloseCaptionPlaceholder(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.string_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.from_player_)*/false
  , /*decltype(_impl_.ent_index_)*/-1} {}
struct CUserMessageCloseCaptionPlaceholderDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCloseCaptionPlaceholderDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCloseCaptionPlaceholderDefaultTypeInternal() {}
  union {
    CUserMessageCloseCaptionPlaceholder _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCloseCaptionPlaceholderDefaultTypeInternal _CUserMessageCloseCaptionPlaceholder_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCurrentTimescale::CUserMessageCurrentTimescale(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.current_)*/0} {}
struct CUserMessageCurrentTimescaleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCurrentTimescaleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCurrentTimescaleDefaultTypeInternal() {}
  union {
    CUserMessageCurrentTimescale _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCurrentTimescaleDefaultTypeInternal _CUserMessageCurrentTimescale_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageDesiredTimescale::CUserMessageDesiredTimescale(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.desired_)*/0
  , /*decltype(_impl_.acceleration_)*/0
  , /*decltype(_impl_.minblendrate_)*/0
  , /*decltype(_impl_.blenddeltamultiplier_)*/0} {}
struct CUserMessageDesiredTimescaleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageDesiredTimescaleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageDesiredTimescaleDefaultTypeInternal() {}
  union {
    CUserMessageDesiredTimescale _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageDesiredTimescaleDefaultTypeInternal _CUserMessageDesiredTimescale_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageFade::CUserMessageFade(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.duration_)*/0u
  , /*decltype(_impl_.hold_time_)*/0u
  , /*decltype(_impl_.flags_)*/0u
  , /*decltype(_impl_.color_)*/0u} {}
struct CUserMessageFadeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageFadeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageFadeDefaultTypeInternal() {}
  union {
    CUserMessageFade _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageFadeDefaultTypeInternal _CUserMessageFade_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageShake::CUserMessageShake(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.command_)*/0u
  , /*decltype(_impl_.amplitude_)*/0
  , /*decltype(_impl_.frequency_)*/0
  , /*decltype(_impl_.duration_)*/0} {}
struct CUserMessageShakeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageShakeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageShakeDefaultTypeInternal() {}
  union {
    CUserMessageShake _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageShakeDefaultTypeInternal _CUserMessageShake_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageShakeDir::CUserMessageShakeDir(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.shake_)*/nullptr
  , /*decltype(_impl_.direction_)*/nullptr} {}
struct CUserMessageShakeDirDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageShakeDirDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageShakeDirDefaultTypeInternal() {}
  union {
    CUserMessageShakeDir _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageShakeDirDefaultTypeInternal _CUserMessageShakeDir_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageWaterShake::CUserMessageWaterShake(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.command_)*/0u
  , /*decltype(_impl_.amplitude_)*/0
  , /*decltype(_impl_.frequency_)*/0
  , /*decltype(_impl_.duration_)*/0} {}
struct CUserMessageWaterShakeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageWaterShakeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageWaterShakeDefaultTypeInternal() {}
  union {
    CUserMessageWaterShake _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageWaterShakeDefaultTypeInternal _CUserMessageWaterShake_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageScreenTilt::CUserMessageScreenTilt(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.angle_)*/nullptr
  , /*decltype(_impl_.command_)*/0u
  , /*decltype(_impl_.ease_in_out_)*/false
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.time_)*/0} {}
struct CUserMessageScreenTiltDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageScreenTiltDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageScreenTiltDefaultTypeInternal() {}
  union {
    CUserMessageScreenTilt _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageScreenTiltDefaultTypeInternal _CUserMessageScreenTilt_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageSayText::CUserMessageSayText(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.text_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.chat_)*/false
  , /*decltype(_impl_.playerindex_)*/-1} {}
struct CUserMessageSayTextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageSayTextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageSayTextDefaultTypeInternal() {}
  union {
    CUserMessageSayText _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageSayTextDefaultTypeInternal _CUserMessageSayText_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageSayText2::CUserMessageSayText2(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.messagename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.param1_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.param2_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.param3_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.param4_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.chat_)*/false
  , /*decltype(_impl_.entityindex_)*/-1} {}
struct CUserMessageSayText2DefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageSayText2DefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageSayText2DefaultTypeInternal() {}
  union {
    CUserMessageSayText2 _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageSayText2DefaultTypeInternal _CUserMessageSayText2_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageHudMsg::CUserMessageHudMsg(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.channel_)*/0u
  , /*decltype(_impl_.x_)*/0
  , /*decltype(_impl_.y_)*/0
  , /*decltype(_impl_.color1_)*/0u
  , /*decltype(_impl_.color2_)*/0u
  , /*decltype(_impl_.effect_)*/0u} {}
struct CUserMessageHudMsgDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageHudMsgDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageHudMsgDefaultTypeInternal() {}
  union {
    CUserMessageHudMsg _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageHudMsgDefaultTypeInternal _CUserMessageHudMsg_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageHudText::CUserMessageHudText(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMessageHudTextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageHudTextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageHudTextDefaultTypeInternal() {}
  union {
    CUserMessageHudText _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageHudTextDefaultTypeInternal _CUserMessageHudText_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageTextMsg::CUserMessageTextMsg(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.param_)*/{}
  , /*decltype(_impl_.dest_)*/0u} {}
struct CUserMessageTextMsgDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageTextMsgDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageTextMsgDefaultTypeInternal() {}
  union {
    CUserMessageTextMsg _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageTextMsgDefaultTypeInternal _CUserMessageTextMsg_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageGameTitle::CUserMessageGameTitle(
    ::_pbi::ConstantInitialized) {}
struct CUserMessageGameTitleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageGameTitleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageGameTitleDefaultTypeInternal() {}
  union {
    CUserMessageGameTitle _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageGameTitleDefaultTypeInternal _CUserMessageGameTitle_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageResetHUD::CUserMessageResetHUD(
    ::_pbi::ConstantInitialized) {}
struct CUserMessageResetHUDDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageResetHUDDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageResetHUDDefaultTypeInternal() {}
  union {
    CUserMessageResetHUD _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageResetHUDDefaultTypeInternal _CUserMessageResetHUD_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageSendAudio::CUserMessageSendAudio(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.soundname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.stop_)*/false} {}
struct CUserMessageSendAudioDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageSendAudioDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageSendAudioDefaultTypeInternal() {}
  union {
    CUserMessageSendAudio _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageSendAudioDefaultTypeInternal _CUserMessageSendAudio_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageAudioParameter::CUserMessageAudioParameter(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.parameter_type_)*/0u
  , /*decltype(_impl_.name_hash_code_)*/0u
  , /*decltype(_impl_.value_)*/0
  , /*decltype(_impl_.int_value_)*/0u} {}
struct CUserMessageAudioParameterDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageAudioParameterDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageAudioParameterDefaultTypeInternal() {}
  union {
    CUserMessageAudioParameter _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageAudioParameterDefaultTypeInternal _CUserMessageAudioParameter_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageVoiceMask::CUserMessageVoiceMask(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.gamerules_masks_)*/{}
  , /*decltype(_impl_.ban_masks_)*/{}
  , /*decltype(_impl_.mod_enable_)*/false} {}
struct CUserMessageVoiceMaskDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageVoiceMaskDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageVoiceMaskDefaultTypeInternal() {}
  union {
    CUserMessageVoiceMask _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageVoiceMaskDefaultTypeInternal _CUserMessageVoiceMask_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestState::CUserMessageRequestState(
    ::_pbi::ConstantInitialized) {}
struct CUserMessageRequestStateDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestStateDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestStateDefaultTypeInternal() {}
  union {
    CUserMessageRequestState _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestStateDefaultTypeInternal _CUserMessageRequestState_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRumble::CUserMessageRumble(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.index_)*/0
  , /*decltype(_impl_.data_)*/0
  , /*decltype(_impl_.flags_)*/0} {}
struct CUserMessageRumbleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRumbleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRumbleDefaultTypeInternal() {}
  union {
    CUserMessageRumble _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRumbleDefaultTypeInternal _CUserMessageRumble_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageSayTextChannel::CUserMessageSayTextChannel(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.text_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.player_)*/0
  , /*decltype(_impl_.channel_)*/0} {}
struct CUserMessageSayTextChannelDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageSayTextChannelDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageSayTextChannelDefaultTypeInternal() {}
  union {
    CUserMessageSayTextChannel _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageSayTextChannelDefaultTypeInternal _CUserMessageSayTextChannel_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageColoredText::CUserMessageColoredText(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.text_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.color_)*/0u
  , /*decltype(_impl_.reset_)*/false
  , /*decltype(_impl_.context_value_)*/0
  , /*decltype(_impl_.context_team_id_)*/0
  , /*decltype(_impl_.context_player_slot_)*/-1} {}
struct CUserMessageColoredTextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageColoredTextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageColoredTextDefaultTypeInternal() {}
  union {
    CUserMessageColoredText _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageColoredTextDefaultTypeInternal _CUserMessageColoredText_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageItemPickup::CUserMessageItemPickup(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.itemname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMessageItemPickupDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageItemPickupDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageItemPickupDefaultTypeInternal() {}
  union {
    CUserMessageItemPickup _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageItemPickupDefaultTypeInternal _CUserMessageItemPickup_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageAmmoDenied::CUserMessageAmmoDenied(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.ammo_id_)*/0u} {}
struct CUserMessageAmmoDeniedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageAmmoDeniedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageAmmoDeniedDefaultTypeInternal() {}
  union {
    CUserMessageAmmoDenied _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageAmmoDeniedDefaultTypeInternal _CUserMessageAmmoDenied_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageShowMenu::CUserMessageShowMenu(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.menustring_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.validslots_)*/0u
  , /*decltype(_impl_.displaytime_)*/0u
  , /*decltype(_impl_.needmore_)*/false} {}
struct CUserMessageShowMenuDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageShowMenuDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageShowMenuDefaultTypeInternal() {}
  union {
    CUserMessageShowMenu _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageShowMenuDefaultTypeInternal _CUserMessageShowMenu_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCreditsMsg::CUserMessageCreditsMsg(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.logo_length_)*/0
  , /*decltype(_impl_.rolltype_)*/-1} {}
struct CUserMessageCreditsMsgDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCreditsMsgDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCreditsMsgDefaultTypeInternal() {}
  union {
    CUserMessageCreditsMsg _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCreditsMsgDefaultTypeInternal _CUserMessageCreditsMsg_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessagePlayJingle::CEntityMessagePlayJingle(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.entity_msg_)*/nullptr} {}
struct CEntityMessagePlayJingleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessagePlayJingleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessagePlayJingleDefaultTypeInternal() {}
  union {
    CEntityMessagePlayJingle _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessagePlayJingleDefaultTypeInternal _CEntityMessagePlayJingle_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessageScreenOverlay::CEntityMessageScreenOverlay(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.entity_msg_)*/nullptr
  , /*decltype(_impl_.start_effect_)*/false} {}
struct CEntityMessageScreenOverlayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessageScreenOverlayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessageScreenOverlayDefaultTypeInternal() {}
  union {
    CEntityMessageScreenOverlay _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessageScreenOverlayDefaultTypeInternal _CEntityMessageScreenOverlay_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessageRemoveAllDecals::CEntityMessageRemoveAllDecals(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.entity_msg_)*/nullptr
  , /*decltype(_impl_.remove_decals_)*/false} {}
struct CEntityMessageRemoveAllDecalsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessageRemoveAllDecalsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessageRemoveAllDecalsDefaultTypeInternal() {}
  union {
    CEntityMessageRemoveAllDecals _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessageRemoveAllDecalsDefaultTypeInternal _CEntityMessageRemoveAllDecals_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessagePropagateForce::CEntityMessagePropagateForce(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.impulse_)*/nullptr
  , /*decltype(_impl_.entity_msg_)*/nullptr} {}
struct CEntityMessagePropagateForceDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessagePropagateForceDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessagePropagateForceDefaultTypeInternal() {}
  union {
    CEntityMessagePropagateForce _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessagePropagateForceDefaultTypeInternal _CEntityMessagePropagateForce_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessageDoSpark::CEntityMessageDoSpark(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.origin_)*/nullptr
  , /*decltype(_impl_.entity_msg_)*/nullptr
  , /*decltype(_impl_.radius_)*/0
  , /*decltype(_impl_.color_)*/0u
  , /*decltype(_impl_.beams_)*/0u
  , /*decltype(_impl_.thick_)*/0
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.entityindex_)*/-1} {}
struct CEntityMessageDoSparkDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessageDoSparkDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessageDoSparkDefaultTypeInternal() {}
  union {
    CEntityMessageDoSpark _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessageDoSparkDefaultTypeInternal _CEntityMessageDoSpark_default_instance_;
PROTOBUF_CONSTEXPR CEntityMessageFixAngle::CEntityMessageFixAngle(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.angle_)*/nullptr
  , /*decltype(_impl_.entity_msg_)*/nullptr
  , /*decltype(_impl_.relative_)*/false} {}
struct CEntityMessageFixAngleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CEntityMessageFixAngleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CEntityMessageFixAngleDefaultTypeInternal() {}
  union {
    CEntityMessageFixAngle _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CEntityMessageFixAngleDefaultTypeInternal _CEntityMessageFixAngle_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCameraTransition_Transition_DataDriven::CUserMessageCameraTransition_Transition_DataDriven(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.filename_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.duration_)*/0
  , /*decltype(_impl_.attach_ent_index_)*/-1} {}
struct CUserMessageCameraTransition_Transition_DataDrivenDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCameraTransition_Transition_DataDrivenDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCameraTransition_Transition_DataDrivenDefaultTypeInternal() {}
  union {
    CUserMessageCameraTransition_Transition_DataDriven _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCameraTransition_Transition_DataDrivenDefaultTypeInternal _CUserMessageCameraTransition_Transition_DataDriven_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageCameraTransition::CUserMessageCameraTransition(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.params_data_driven_)*/nullptr
  , /*decltype(_impl_.camera_type_)*/0u
  , /*decltype(_impl_.duration_)*/0} {}
struct CUserMessageCameraTransitionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageCameraTransitionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageCameraTransitionDefaultTypeInternal() {}
  union {
    CUserMessageCameraTransition _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageCameraTransitionDefaultTypeInternal _CUserMessageCameraTransition_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ReleaseParticleIndex::CUserMsg_ParticleManager_ReleaseParticleIndex(
    ::_pbi::ConstantInitialized) {}
struct CUserMsg_ParticleManager_ReleaseParticleIndexDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ReleaseParticleIndexDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ReleaseParticleIndexDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ReleaseParticleIndex _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ReleaseParticleIndexDefaultTypeInternal _CUserMsg_ParticleManager_ReleaseParticleIndex_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_CreateParticle::CUserMsg_ParticleManager_CreateParticle(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.control_point_configuration_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.aggregation_position_)*/nullptr
  , /*decltype(_impl_.particle_name_index_)*/uint64_t{0u}
  , /*decltype(_impl_.attach_type_)*/0
  , /*decltype(_impl_.team_behavior_)*/0
  , /*decltype(_impl_.apply_voice_ban_rules_)*/false
  , /*decltype(_impl_.cluster_)*/false
  , /*decltype(_impl_.endcap_time_)*/0
  , /*decltype(_impl_.entity_handle_)*/16777215u
  , /*decltype(_impl_.entity_handle_for_modifiers_)*/16777215u} {}
struct CUserMsg_ParticleManager_CreateParticleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_CreateParticleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_CreateParticleDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_CreateParticle _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_CreateParticleDefaultTypeInternal _CUserMsg_ParticleManager_CreateParticle_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticle::CUserMsg_ParticleManager_DestroyParticle(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.destroy_immediately_)*/false} {}
struct CUserMsg_ParticleManager_DestroyParticleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_DestroyParticleDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_DestroyParticle _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_DestroyParticleDefaultTypeInternal _CUserMsg_ParticleManager_DestroyParticle_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticleInvolving::CUserMsg_ParticleManager_DestroyParticleInvolving(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.destroy_immediately_)*/false
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_DestroyParticleInvolvingDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticleInvolvingDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_DestroyParticleInvolvingDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_DestroyParticleInvolving _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_DestroyParticleInvolvingDefaultTypeInternal _CUserMsg_ParticleManager_DestroyParticleInvolving_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticleNamed::CUserMsg_ParticleManager_DestroyParticleNamed(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.particle_name_index_)*/uint64_t{0u}
  , /*decltype(_impl_.destroy_immediately_)*/false
  , /*decltype(_impl_.play_endcap_)*/false
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_DestroyParticleNamedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyParticleNamedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_DestroyParticleNamedDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_DestroyParticleNamed _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_DestroyParticleNamedDefaultTypeInternal _CUserMsg_ParticleManager_DestroyParticleNamed_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.position_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticle_OBSOLETEDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticle_OBSOLETEDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticle_OBSOLETEDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticle_OBSOLETE _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticle_OBSOLETEDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticle_OBSOLETE_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.forward_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETEDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETEDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETEDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETEDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.forward_)*/nullptr
  , /*decltype(_impl_.deprecated_right_)*/nullptr
  , /*decltype(_impl_.up_)*/nullptr
  , /*decltype(_impl_.left_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETEDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETEDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETEDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETEDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleTransform::CUserMsg_ParticleManager_UpdateParticleTransform(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.position_)*/nullptr
  , /*decltype(_impl_.orientation_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0
  , /*decltype(_impl_.interpolation_interval_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleTransformDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleTransformDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleTransformDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleTransform _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleTransformDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleTransform_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleFallback::CUserMsg_ParticleManager_UpdateParticleFallback(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.position_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleFallbackDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleFallbackDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleFallbackDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleFallback _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleFallbackDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleFallback_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleOffset::CUserMsg_ParticleManager_UpdateParticleOffset(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.origin_offset_)*/nullptr
  , /*decltype(_impl_.angle_offset_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleOffsetDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleOffsetDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleOffsetDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleOffset _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleOffsetDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleOffset_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleEnt::CUserMsg_ParticleManager_UpdateParticleEnt(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.fallback_position_)*/nullptr
  , /*decltype(_impl_.offset_position_)*/nullptr
  , /*decltype(_impl_.offset_angles_)*/nullptr
  , /*decltype(_impl_.control_point_)*/0
  , /*decltype(_impl_.attach_type_)*/0
  , /*decltype(_impl_.attachment_)*/0
  , /*decltype(_impl_.include_wearables_)*/false
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_UpdateParticleEntDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleEntDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleEntDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleEnt _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleEntDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleEnt_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleSetFrozen::CUserMsg_ParticleManager_UpdateParticleSetFrozen(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.set_frozen_)*/false
  , /*decltype(_impl_.transition_duration_)*/0} {}
struct CUserMsg_ParticleManager_UpdateParticleSetFrozenDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleSetFrozenDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleSetFrozenDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleSetFrozen _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleSetFrozenDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleSetFrozen_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleShouldDraw::CUserMsg_ParticleManager_UpdateParticleShouldDraw(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.should_draw_)*/false} {}
struct CUserMsg_ParticleManager_UpdateParticleShouldDrawDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateParticleShouldDrawDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateParticleShouldDrawDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateParticleShouldDraw _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateParticleShouldDrawDefaultTypeInternal _CUserMsg_ParticleManager_UpdateParticleShouldDraw_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ChangeControlPointAttachment::CUserMsg_ParticleManager_ChangeControlPointAttachment(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.attachment_old_)*/0
  , /*decltype(_impl_.attachment_new_)*/0
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_ChangeControlPointAttachmentDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ChangeControlPointAttachmentDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ChangeControlPointAttachmentDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ChangeControlPointAttachment _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ChangeControlPointAttachmentDefaultTypeInternal _CUserMsg_ParticleManager_ChangeControlPointAttachment_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateEntityPosition::CUserMsg_ParticleManager_UpdateEntityPosition(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.position_)*/nullptr
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_UpdateEntityPositionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateEntityPositionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateEntityPositionDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateEntityPosition _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateEntityPositionDefaultTypeInternal _CUserMsg_ParticleManager_UpdateEntityPosition_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleFoWProperties::CUserMsg_ParticleManager_SetParticleFoWProperties(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.fow_control_point_)*/0
  , /*decltype(_impl_.fow_control_point2_)*/0
  , /*decltype(_impl_.fow_radius_)*/0} {}
struct CUserMsg_ParticleManager_SetParticleFoWPropertiesDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleFoWPropertiesDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleFoWPropertiesDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleFoWProperties _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleFoWPropertiesDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleFoWProperties_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleShouldCheckFoW::CUserMsg_ParticleManager_SetParticleShouldCheckFoW(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.check_fow_)*/false} {}
struct CUserMsg_ParticleManager_SetParticleShouldCheckFoWDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleShouldCheckFoWDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleShouldCheckFoWDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleShouldCheckFoW _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleShouldCheckFoWDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleShouldCheckFoW_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetControlPointModel::CUserMsg_ParticleManager_SetControlPointModel(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.model_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_SetControlPointModelDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetControlPointModelDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetControlPointModelDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetControlPointModel _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetControlPointModelDefaultTypeInternal _CUserMsg_ParticleManager_SetControlPointModel_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetControlPointSnapshot::CUserMsg_ParticleManager_SetControlPointSnapshot(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.snapshot_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.control_point_)*/0} {}
struct CUserMsg_ParticleManager_SetControlPointSnapshotDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetControlPointSnapshotDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetControlPointSnapshotDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetControlPointSnapshot _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetControlPointSnapshotDefaultTypeInternal _CUserMsg_ParticleManager_SetControlPointSnapshot_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleText::CUserMsg_ParticleManager_SetParticleText(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.text_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMsg_ParticleManager_SetParticleTextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleTextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleTextDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleText _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleTextDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleText_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetTextureAttribute::CUserMsg_ParticleManager_SetTextureAttribute(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.attribute_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.texture_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMsg_ParticleManager_SetTextureAttributeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetTextureAttributeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetTextureAttributeDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetTextureAttribute _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetTextureAttributeDefaultTypeInternal _CUserMsg_ParticleManager_SetTextureAttribute_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetSceneObjectGenericFlag::CUserMsg_ParticleManager_SetSceneObjectGenericFlag(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.flag_value_)*/false} {}
struct CUserMsg_ParticleManager_SetSceneObjectGenericFlagDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetSceneObjectGenericFlagDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetSceneObjectGenericFlagDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetSceneObjectGenericFlag _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetSceneObjectGenericFlagDefaultTypeInternal _CUserMsg_ParticleManager_SetSceneObjectGenericFlag_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.tint_)*/0u
  , /*decltype(_impl_.desat_)*/0} {}
struct CUserMsg_ParticleManager_SetSceneObjectTintAndDesatDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetSceneObjectTintAndDesatDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetSceneObjectTintAndDesatDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetSceneObjectTintAndDesat _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetSceneObjectTintAndDesatDefaultTypeInternal _CUserMsg_ParticleManager_SetSceneObjectTintAndDesat_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleSkipToTime::CUserMsg_ParticleManager_ParticleSkipToTime(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.skip_to_time_)*/0} {}
struct CUserMsg_ParticleManager_ParticleSkipToTimeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleSkipToTimeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ParticleSkipToTimeDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ParticleSkipToTime _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ParticleSkipToTimeDefaultTypeInternal _CUserMsg_ParticleManager_ParticleSkipToTime_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleCanFreeze::CUserMsg_ParticleManager_ParticleCanFreeze(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.can_freeze_)*/false} {}
struct CUserMsg_ParticleManager_ParticleCanFreezeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleCanFreezeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ParticleCanFreezeDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ParticleCanFreeze _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ParticleCanFreezeDefaultTypeInternal _CUserMsg_ParticleManager_ParticleCanFreeze_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.freeze_transition_override_)*/0} {}
struct CUserMsg_ParticleManager_ParticleFreezeTransitionOverrideDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ParticleFreezeTransitionOverrideDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ParticleFreezeTransitionOverrideDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ParticleFreezeTransitionOverride _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ParticleFreezeTransitionOverrideDefaultTypeInternal _CUserMsg_ParticleManager_ParticleFreezeTransitionOverride_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_FreezeParticleInvolving::CUserMsg_ParticleManager_FreezeParticleInvolving(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.set_frozen_)*/false
  , /*decltype(_impl_.transition_duration_)*/0
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_FreezeParticleInvolvingDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_FreezeParticleInvolvingDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_FreezeParticleInvolvingDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_FreezeParticleInvolving _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_FreezeParticleInvolvingDefaultTypeInternal _CUserMsg_ParticleManager_FreezeParticleInvolving_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_AddModellistOverrideElement::CUserMsg_ParticleManager_AddModellistOverrideElement(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.model_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.spawn_probability_)*/0
  , /*decltype(_impl_.groupid_)*/0u} {}
struct CUserMsg_ParticleManager_AddModellistOverrideElementDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_AddModellistOverrideElementDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_AddModellistOverrideElementDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_AddModellistOverrideElement _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_AddModellistOverrideElementDefaultTypeInternal _CUserMsg_ParticleManager_AddModellistOverrideElement_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ClearModellistOverride::CUserMsg_ParticleManager_ClearModellistOverride(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.groupid_)*/0u} {}
struct CUserMsg_ParticleManager_ClearModellistOverrideDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_ClearModellistOverrideDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_ClearModellistOverrideDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_ClearModellistOverride _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_ClearModellistOverrideDefaultTypeInternal _CUserMsg_ParticleManager_ClearModellistOverride_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.value_name_hash_)*/0u
  , /*decltype(_impl_.value_)*/0} {}
struct CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValueDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValueDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValueDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValueDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.value_)*/nullptr
  , /*decltype(_impl_.value_name_hash_)*/0u} {}
struct CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValueDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValueDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValueDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValueDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.angles_)*/nullptr
  , /*decltype(_impl_.translation_)*/nullptr
  , /*decltype(_impl_.value_name_hash_)*/0u} {}
struct CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValueDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValueDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValueDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValueDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.value_name_hash_)*/0u
  , /*decltype(_impl_.ent_index_)*/16777215u} {}
struct CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContextDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContextDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContext::CUserMsg_ParticleManager_SetParticleNamedValueContext(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.float_values_)*/{}
  , /*decltype(_impl_.vector_values_)*/{}
  , /*decltype(_impl_.transform_values_)*/{}
  , /*decltype(_impl_.ehandle_values_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CUserMsg_ParticleManager_SetParticleNamedValueContextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleNamedValueContextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleNamedValueContextDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleNamedValueContext _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleNamedValueContextDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleNamedValueContext_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_CreatePhysicsSim::CUserMsg_ParticleManager_CreatePhysicsSim(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.prop_group_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.use_high_quality_simulation_)*/false
  , /*decltype(_impl_.max_particle_count_)*/0u} {}
struct CUserMsg_ParticleManager_CreatePhysicsSimDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_CreatePhysicsSimDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_CreatePhysicsSimDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_CreatePhysicsSim _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_CreatePhysicsSimDefaultTypeInternal _CUserMsg_ParticleManager_CreatePhysicsSim_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyPhysicsSim::CUserMsg_ParticleManager_DestroyPhysicsSim(
    ::_pbi::ConstantInitialized) {}
struct CUserMsg_ParticleManager_DestroyPhysicsSimDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_DestroyPhysicsSimDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_DestroyPhysicsSimDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_DestroyPhysicsSim _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_DestroyPhysicsSimDefaultTypeInternal _CUserMsg_ParticleManager_DestroyPhysicsSim_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetVData::CUserMsg_ParticleManager_SetVData(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.vdata_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMsg_ParticleManager_SetVDataDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetVDataDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetVDataDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetVData _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetVDataDefaultTypeInternal _CUserMsg_ParticleManager_SetVData_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetMaterialOverride::CUserMsg_ParticleManager_SetMaterialOverride(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.material_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.include_children_)*/false} {}
struct CUserMsg_ParticleManager_SetMaterialOverrideDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetMaterialOverrideDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetMaterialOverrideDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetMaterialOverride _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetMaterialOverrideDefaultTypeInternal _CUserMsg_ParticleManager_SetMaterialOverride_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_AddFan::CUserMsg_ParticleManager_AddFan(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.fan_force_curve_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.attachment_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.bounds_mins_)*/nullptr
  , /*decltype(_impl_.bounds_maxs_)*/nullptr
  , /*decltype(_impl_.fan_origin_)*/nullptr
  , /*decltype(_impl_.fan_origin_offset_)*/nullptr
  , /*decltype(_impl_.fan_direction_)*/nullptr
  , /*decltype(_impl_.active_)*/false
  , /*decltype(_impl_.falloff_)*/false
  , /*decltype(_impl_.pull_towards_point_)*/false
  , /*decltype(_impl_.force_)*/0
  , /*decltype(_impl_.curve_min_dist_)*/0
  , /*decltype(_impl_.curve_max_dist_)*/0
  , /*decltype(_impl_.fan_type_)*/0u
  , /*decltype(_impl_.cone_start_radius_)*/0
  , /*decltype(_impl_.cone_end_radius_)*/0
  , /*decltype(_impl_.cone_length_)*/0
  , /*decltype(_impl_.entity_handle_)*/16777215u} {}
struct CUserMsg_ParticleManager_AddFanDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_AddFanDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_AddFanDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_AddFan _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_AddFanDefaultTypeInternal _CUserMsg_ParticleManager_AddFan_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateFan::CUserMsg_ParticleManager_UpdateFan(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.fan_origin_)*/nullptr
  , /*decltype(_impl_.fan_origin_offset_)*/nullptr
  , /*decltype(_impl_.fan_direction_)*/nullptr
  , /*decltype(_impl_.bounds_mins_)*/nullptr
  , /*decltype(_impl_.bounds_maxs_)*/nullptr
  , /*decltype(_impl_.active_)*/false
  , /*decltype(_impl_.fan_ramp_ratio_)*/0} {}
struct CUserMsg_ParticleManager_UpdateFanDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_UpdateFanDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_UpdateFanDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_UpdateFan _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_UpdateFanDefaultTypeInternal _CUserMsg_ParticleManager_UpdateFan_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_RemoveFan::CUserMsg_ParticleManager_RemoveFan(
    ::_pbi::ConstantInitialized) {}
struct CUserMsg_ParticleManager_RemoveFanDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_RemoveFanDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_RemoveFanDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_RemoveFan _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_RemoveFanDefaultTypeInternal _CUserMsg_ParticleManager_RemoveFan_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleClusterGrowth::CUserMsg_ParticleManager_SetParticleClusterGrowth(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.origin_)*/nullptr
  , /*decltype(_impl_.duration_)*/0} {}
struct CUserMsg_ParticleManager_SetParticleClusterGrowthDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManager_SetParticleClusterGrowthDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManager_SetParticleClusterGrowthDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager_SetParticleClusterGrowth _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManager_SetParticleClusterGrowthDefaultTypeInternal _CUserMsg_ParticleManager_SetParticleClusterGrowth_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_ParticleManager::CUserMsg_ParticleManager(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._extensions_)*/{}
  , /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.release_particle_index_)*/nullptr
  , /*decltype(_impl_.create_particle_)*/nullptr
  , /*decltype(_impl_.destroy_particle_)*/nullptr
  , /*decltype(_impl_.destroy_particle_involving_)*/nullptr
  , /*decltype(_impl_.update_particle_)*/nullptr
  , /*decltype(_impl_.update_particle_fwd_)*/nullptr
  , /*decltype(_impl_.update_particle_orient_)*/nullptr
  , /*decltype(_impl_.update_particle_fallback_)*/nullptr
  , /*decltype(_impl_.update_particle_offset_)*/nullptr
  , /*decltype(_impl_.update_particle_ent_)*/nullptr
  , /*decltype(_impl_.update_particle_should_draw_)*/nullptr
  , /*decltype(_impl_.update_particle_set_frozen_)*/nullptr
  , /*decltype(_impl_.change_control_point_attachment_)*/nullptr
  , /*decltype(_impl_.update_entity_position_)*/nullptr
  , /*decltype(_impl_.set_particle_fow_properties_)*/nullptr
  , /*decltype(_impl_.set_particle_text_)*/nullptr
  , /*decltype(_impl_.set_particle_should_check_fow_)*/nullptr
  , /*decltype(_impl_.set_control_point_model_)*/nullptr
  , /*decltype(_impl_.set_control_point_snapshot_)*/nullptr
  , /*decltype(_impl_.set_texture_attribute_)*/nullptr
  , /*decltype(_impl_.set_scene_object_generic_flag_)*/nullptr
  , /*decltype(_impl_.set_scene_object_tint_and_desat_)*/nullptr
  , /*decltype(_impl_.destroy_particle_named_)*/nullptr
  , /*decltype(_impl_.particle_skip_to_time_)*/nullptr
  , /*decltype(_impl_.particle_can_freeze_)*/nullptr
  , /*decltype(_impl_.set_named_value_context_)*/nullptr
  , /*decltype(_impl_.update_particle_transform_)*/nullptr
  , /*decltype(_impl_.particle_freeze_transition_override_)*/nullptr
  , /*decltype(_impl_.freeze_particle_involving_)*/nullptr
  , /*decltype(_impl_.add_modellist_override_element_)*/nullptr
  , /*decltype(_impl_.clear_modellist_override_)*/nullptr
  , /*decltype(_impl_.create_physics_sim_)*/nullptr
  , /*decltype(_impl_.destroy_physics_sim_)*/nullptr
  , /*decltype(_impl_.set_vdata_)*/nullptr
  , /*decltype(_impl_.set_material_override_)*/nullptr
  , /*decltype(_impl_.add_fan_)*/nullptr
  , /*decltype(_impl_.update_fan_)*/nullptr
  , /*decltype(_impl_.set_particle_cluster_growth_)*/nullptr
  , /*decltype(_impl_.remove_fan_)*/nullptr
  , /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_.index_)*/0u} {}
struct CUserMsg_ParticleManagerDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_ParticleManagerDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_ParticleManagerDefaultTypeInternal() {}
  union {
    CUserMsg_ParticleManager _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_ParticleManagerDefaultTypeInternal _CUserMsg_ParticleManager_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_HudError::CUserMsg_HudError(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.order_id_)*/0} {}
struct CUserMsg_HudErrorDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_HudErrorDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_HudErrorDefaultTypeInternal() {}
  union {
    CUserMsg_HudError _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_HudErrorDefaultTypeInternal _CUserMsg_HudError_default_instance_;
PROTOBUF_CONSTEXPR CUserMsg_CustomGameEvent::CUserMsg_CustomGameEvent(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.event_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.data_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {}
struct CUserMsg_CustomGameEventDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMsg_CustomGameEventDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMsg_CustomGameEventDefaultTypeInternal() {}
  union {
    CUserMsg_CustomGameEvent _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMsg_CustomGameEventDefaultTypeInternal _CUserMsg_CustomGameEvent_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageHapticsManagerPulse::CUserMessageHapticsManagerPulse(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.hand_id_)*/0
  , /*decltype(_impl_.effect_amplitude_)*/0
  , /*decltype(_impl_.effect_frequency_)*/0
  , /*decltype(_impl_.effect_duration_)*/0} {}
struct CUserMessageHapticsManagerPulseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageHapticsManagerPulseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageHapticsManagerPulseDefaultTypeInternal() {}
  union {
    CUserMessageHapticsManagerPulse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageHapticsManagerPulseDefaultTypeInternal _CUserMessageHapticsManagerPulse_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageHapticsManagerEffect::CUserMessageHapticsManagerEffect(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.hand_id_)*/0
  , /*decltype(_impl_.effect_name_hash_code_)*/0u
  , /*decltype(_impl_.effect_scale_)*/0} {}
struct CUserMessageHapticsManagerEffectDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageHapticsManagerEffectDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageHapticsManagerEffectDefaultTypeInternal() {}
  union {
    CUserMessageHapticsManagerEffect _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageHapticsManagerEffectDefaultTypeInternal _CUserMessageHapticsManagerEffect_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageAnimStateGraphState::CUserMessageAnimStateGraphState(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.data_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.entity_index_)*/0} {}
struct CUserMessageAnimStateGraphStateDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageAnimStateGraphStateDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageAnimStateGraphStateDefaultTypeInternal() {}
  union {
    CUserMessageAnimStateGraphState _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageAnimStateGraphStateDefaultTypeInternal _CUserMessageAnimStateGraphState_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageUpdateCssClasses::CUserMessageUpdateCssClasses(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.css_classes_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.target_world_panel_)*/0
  , /*decltype(_impl_.is_add_)*/false} {}
struct CUserMessageUpdateCssClassesDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageUpdateCssClassesDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageUpdateCssClassesDefaultTypeInternal() {}
  union {
    CUserMessageUpdateCssClasses _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageUpdateCssClassesDefaultTypeInternal _CUserMessageUpdateCssClasses_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageServerFrameTime::CUserMessageServerFrameTime(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.frame_time_)*/0} {}
struct CUserMessageServerFrameTimeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageServerFrameTimeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageServerFrameTimeDefaultTypeInternal() {}
  union {
    CUserMessageServerFrameTime _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageServerFrameTimeDefaultTypeInternal _CUserMessageServerFrameTime_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageLagCompensationError::CUserMessageLagCompensationError(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.distance_)*/0} {}
struct CUserMessageLagCompensationErrorDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageLagCompensationErrorDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageLagCompensationErrorDefaultTypeInternal() {}
  union {
    CUserMessageLagCompensationError _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageLagCompensationErrorDefaultTypeInternal _CUserMessageLagCompensationError_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestDllStatus::CUserMessageRequestDllStatus(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.dll_action_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.full_report_)*/false} {}
struct CUserMessageRequestDllStatusDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestDllStatusDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestDllStatusDefaultTypeInternal() {}
  union {
    CUserMessageRequestDllStatus _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestDllStatusDefaultTypeInternal _CUserMessageRequestDllStatus_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestUtilAction::CUserMessageRequestUtilAction(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.util1_)*/0
  , /*decltype(_impl_.util2_)*/0
  , /*decltype(_impl_.util3_)*/0
  , /*decltype(_impl_.util4_)*/0
  , /*decltype(_impl_.util5_)*/0} {}
struct CUserMessageRequestUtilActionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestUtilActionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestUtilActionDefaultTypeInternal() {}
  union {
    CUserMessageRequestUtilAction _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestUtilActionDefaultTypeInternal _CUserMessageRequestUtilAction_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_UtilMsg_Response_ItemDetail::CUserMessage_UtilMsg_Response_ItemDetail(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.index_)*/0
  , /*decltype(_impl_.hash_)*/0
  , /*decltype(_impl_.crc_)*/0} {}
struct CUserMessage_UtilMsg_Response_ItemDetailDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_UtilMsg_Response_ItemDetailDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_UtilMsg_Response_ItemDetailDefaultTypeInternal() {}
  union {
    CUserMessage_UtilMsg_Response_ItemDetail _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_UtilMsg_Response_ItemDetailDefaultTypeInternal _CUserMessage_UtilMsg_Response_ItemDetail_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_UtilMsg_Response::CUserMessage_UtilMsg_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.crc_part_)*/{}
  , /*decltype(_impl_.crc_part2_)*/{}
  , /*decltype(_impl_.itemdetails_)*/{}
  , /*decltype(_impl_.crc_)*/0u
  , /*decltype(_impl_.item_count_)*/0
  , /*decltype(_impl_.crc2_)*/0u
  , /*decltype(_impl_.item_count2_)*/0
  , /*decltype(_impl_.client_timestamp_)*/0
  , /*decltype(_impl_.platform_)*/0
  , /*decltype(_impl_.itemgroup_)*/0
  , /*decltype(_impl_.total_count_)*/0
  , /*decltype(_impl_.total_count2_)*/0} {}
struct CUserMessage_UtilMsg_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_UtilMsg_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_UtilMsg_ResponseDefaultTypeInternal() {}
  union {
    CUserMessage_UtilMsg_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_UtilMsg_ResponseDefaultTypeInternal _CUserMessage_UtilMsg_Response_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_DllStatus_CVDiagnostic::CUserMessage_DllStatus_CVDiagnostic(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.string_value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.id_)*/0u
  , /*decltype(_impl_.extended_)*/0u
  , /*decltype(_impl_.value_)*/uint64_t{0u}} {}
struct CUserMessage_DllStatus_CVDiagnosticDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_DllStatus_CVDiagnosticDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_DllStatus_CVDiagnosticDefaultTypeInternal() {}
  union {
    CUserMessage_DllStatus_CVDiagnostic _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_DllStatus_CVDiagnosticDefaultTypeInternal _CUserMessage_DllStatus_CVDiagnostic_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_DllStatus_CModule::CUserMessage_DllStatus_CModule(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.base_addr_)*/uint64_t{0u}
  , /*decltype(_impl_.size_)*/0u
  , /*decltype(_impl_.timestamp_)*/0u} {}
struct CUserMessage_DllStatus_CModuleDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_DllStatus_CModuleDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_DllStatus_CModuleDefaultTypeInternal() {}
  union {
    CUserMessage_DllStatus_CModule _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_DllStatus_CModuleDefaultTypeInternal _CUserMessage_DllStatus_CModule_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_DllStatus::CUserMessage_DllStatus(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.diagnostics_)*/{}
  , /*decltype(_impl_.modules_)*/{}
  , /*decltype(_impl_.file_report_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.command_line_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.total_files_)*/0u
  , /*decltype(_impl_.process_id_)*/0u
  , /*decltype(_impl_.client_time_)*/uint64_t{0u}
  , /*decltype(_impl_.osversion_)*/0} {}
struct CUserMessage_DllStatusDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_DllStatusDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_DllStatusDefaultTypeInternal() {}
  union {
    CUserMessage_DllStatus _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_DllStatusDefaultTypeInternal _CUserMessage_DllStatus_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestInventory::CUserMessageRequestInventory(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.inventory_)*/0
  , /*decltype(_impl_.offset_)*/0
  , /*decltype(_impl_.options_)*/0} {}
struct CUserMessageRequestInventoryDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestInventoryDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestInventoryDefaultTypeInternal() {}
  union {
    CUserMessageRequestInventory _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestInventoryDefaultTypeInternal _CUserMessageRequestInventory_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_Inventory_Response_InventoryDetail::CUserMessage_Inventory_Response_InventoryDetail(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.base_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.primary_)*/int64_t{0}
  , /*decltype(_impl_.offset_)*/int64_t{0}
  , /*decltype(_impl_.first_)*/int64_t{0}
  , /*decltype(_impl_.index_)*/0
  , /*decltype(_impl_.base_detail_)*/0
  , /*decltype(_impl_.base_)*/int64_t{0}
  , /*decltype(_impl_.base_time_)*/0
  , /*decltype(_impl_.base_hash_)*/0} {}
struct CUserMessage_Inventory_Response_InventoryDetailDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_Inventory_Response_InventoryDetailDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_Inventory_Response_InventoryDetailDefaultTypeInternal() {}
  union {
    CUserMessage_Inventory_Response_InventoryDetail _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_Inventory_Response_InventoryDetailDefaultTypeInternal _CUserMessage_Inventory_Response_InventoryDetail_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_Inventory_Response::CUserMessage_Inventory_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.inventories_)*/{}
  , /*decltype(_impl_.inventories2_)*/{}
  , /*decltype(_impl_.inventories3_)*/{}
  , /*decltype(_impl_.crc_)*/0u
  , /*decltype(_impl_.item_count_)*/0
  , /*decltype(_impl_.osversion_)*/0
  , /*decltype(_impl_.perf_time_)*/0
  , /*decltype(_impl_.client_timestamp_)*/0
  , /*decltype(_impl_.platform_)*/0
  , /*decltype(_impl_.inv_type_)*/0
  , /*decltype(_impl_.build_version_)*/0
  , /*decltype(_impl_.start_time_)*/int64_t{0}
  , /*decltype(_impl_.instance_)*/0} {}
struct CUserMessage_Inventory_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_Inventory_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_Inventory_ResponseDefaultTypeInternal() {}
  union {
    CUserMessage_Inventory_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_Inventory_ResponseDefaultTypeInternal _CUserMessage_Inventory_Response_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestDiagnostic_Diagnostic::CUserMessageRequestDiagnostic_Diagnostic(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.alias_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.vardetail_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.offset_)*/int64_t{0}
  , /*decltype(_impl_.index_)*/0
  , /*decltype(_impl_.param_)*/0
  , /*decltype(_impl_.length_)*/0
  , /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_.base_)*/int64_t{0}
  , /*decltype(_impl_.range_)*/int64_t{0}
  , /*decltype(_impl_.extent_)*/int64_t{0}
  , /*decltype(_impl_.detail_)*/int64_t{0}
  , /*decltype(_impl_.context_)*/0} {}
struct CUserMessageRequestDiagnostic_DiagnosticDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestDiagnostic_DiagnosticDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestDiagnostic_DiagnosticDefaultTypeInternal() {}
  union {
    CUserMessageRequestDiagnostic_Diagnostic _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestDiagnostic_DiagnosticDefaultTypeInternal _CUserMessageRequestDiagnostic_Diagnostic_default_instance_;
PROTOBUF_CONSTEXPR CUserMessageRequestDiagnostic::CUserMessageRequestDiagnostic(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.diagnostics_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CUserMessageRequestDiagnosticDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessageRequestDiagnosticDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessageRequestDiagnosticDefaultTypeInternal() {}
  union {
    CUserMessageRequestDiagnostic _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessageRequestDiagnosticDefaultTypeInternal _CUserMessageRequestDiagnostic_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_Diagnostic_Response_Diagnostic::CUserMessage_Diagnostic_Response_Diagnostic(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.detail_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.alias_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.backup_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.offset_)*/int64_t{0}
  , /*decltype(_impl_.index_)*/0
  , /*decltype(_impl_.param_)*/0
  , /*decltype(_impl_.base_)*/int64_t{0}
  , /*decltype(_impl_.length_)*/0
  , /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_.range_)*/int64_t{0}
  , /*decltype(_impl_.control_)*/int64_t{0}
  , /*decltype(_impl_.augment_)*/int64_t{0}
  , /*decltype(_impl_.placebo_)*/int64_t{0}
  , /*decltype(_impl_.context_)*/0} {}
struct CUserMessage_Diagnostic_Response_DiagnosticDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_Diagnostic_Response_DiagnosticDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_Diagnostic_Response_DiagnosticDefaultTypeInternal() {}
  union {
    CUserMessage_Diagnostic_Response_Diagnostic _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_Diagnostic_Response_DiagnosticDefaultTypeInternal _CUserMessage_Diagnostic_Response_Diagnostic_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_Diagnostic_Response::CUserMessage_Diagnostic_Response(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.diagnostics_)*/{}
  , /*decltype(_impl_.build_version_)*/0
  , /*decltype(_impl_.instance_)*/0
  , /*decltype(_impl_.start_time_)*/int64_t{0}
  , /*decltype(_impl_.osversion_)*/0
  , /*decltype(_impl_.platform_)*/0} {}
struct CUserMessage_Diagnostic_ResponseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_Diagnostic_ResponseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_Diagnostic_ResponseDefaultTypeInternal() {}
  union {
    CUserMessage_Diagnostic_Response _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_Diagnostic_ResponseDefaultTypeInternal _CUserMessage_Diagnostic_Response_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_ExtraUserData::CUserMessage_ExtraUserData(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.detail1_)*/{}
  , /*decltype(_impl_.detail2_)*/{}
  , /*decltype(_impl_.value1_)*/int64_t{0}
  , /*decltype(_impl_.value2_)*/int64_t{0}
  , /*decltype(_impl_.item_)*/0} {}
struct CUserMessage_ExtraUserDataDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_ExtraUserDataDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_ExtraUserDataDefaultTypeInternal() {}
  union {
    CUserMessage_ExtraUserData _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_ExtraUserDataDefaultTypeInternal _CUserMessage_ExtraUserData_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_NotifyResponseFound_Criteria::CUserMessage_NotifyResponseFound_Criteria(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.name_symbol_)*/0u} {}
struct CUserMessage_NotifyResponseFound_CriteriaDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_NotifyResponseFound_CriteriaDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_NotifyResponseFound_CriteriaDefaultTypeInternal() {}
  union {
    CUserMessage_NotifyResponseFound_Criteria _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_NotifyResponseFound_CriteriaDefaultTypeInternal _CUserMessage_NotifyResponseFound_Criteria_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_NotifyResponseFound::CUserMessage_NotifyResponseFound(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.criteria_)*/{}
  , /*decltype(_impl_.int_criteria_names_)*/{}
  , /*decltype(_impl_._int_criteria_names_cached_byte_size_)*/{0}
  , /*decltype(_impl_.int_criteria_values_)*/{}
  , /*decltype(_impl_._int_criteria_values_cached_byte_size_)*/{0}
  , /*decltype(_impl_.float_criteria_names_)*/{}
  , /*decltype(_impl_._float_criteria_names_cached_byte_size_)*/{0}
  , /*decltype(_impl_.float_criteria_values_)*/{}
  , /*decltype(_impl_.symbol_criteria_names_)*/{}
  , /*decltype(_impl_._symbol_criteria_names_cached_byte_size_)*/{0}
  , /*decltype(_impl_.symbol_criteria_values_)*/{}
  , /*decltype(_impl_._symbol_criteria_values_cached_byte_size_)*/{0}
  , /*decltype(_impl_.rule_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.response_value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.response_concept_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.speak_result_)*/0
  , /*decltype(_impl_.ent_index_)*/-1} {}
struct CUserMessage_NotifyResponseFoundDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_NotifyResponseFoundDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_NotifyResponseFoundDefaultTypeInternal() {}
  union {
    CUserMessage_NotifyResponseFound _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_NotifyResponseFoundDefaultTypeInternal _CUserMessage_NotifyResponseFound_default_instance_;
PROTOBUF_CONSTEXPR CUserMessage_PlayResponseConditional::CUserMessage_PlayResponseConditional(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.player_slots_)*/{}
  , /*decltype(_impl_.response_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.ent_origin_)*/nullptr
  , /*decltype(_impl_.pre_delay_)*/0
  , /*decltype(_impl_.mix_priority_)*/0
  , /*decltype(_impl_.ent_index_)*/-1} {}
struct CUserMessage_PlayResponseConditionalDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CUserMessage_PlayResponseConditionalDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CUserMessage_PlayResponseConditionalDefaultTypeInternal() {}
  union {
    CUserMessage_PlayResponseConditional _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CUserMessage_PlayResponseConditionalDefaultTypeInternal _CUserMessage_PlayResponseConditional_default_instance_;
static ::_pb::Metadata file_level_metadata_usermessages_2eproto[107];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_usermessages_2eproto[5];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_usermessages_2eproto = nullptr;

const uint32_t TableStruct_usermessages_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  PROTOBUF_FIELD_OFFSET(::CUserMessageAchievementEvent, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAchievementEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageAchievementEvent, _impl_.achievement_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _impl_.hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _impl_.from_player_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaption, _impl_.ent_index_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _impl_.hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _impl_.from_player_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionDirect, _impl_.ent_index_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _impl_.string_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _impl_.from_player_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCloseCaptionPlaceholder, _impl_.ent_index_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCurrentTimescale, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCurrentTimescale, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCurrentTimescale, _impl_.current_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _impl_.desired_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _impl_.acceleration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _impl_.minblendrate_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageDesiredTimescale, _impl_.blenddeltamultiplier_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _impl_.hold_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _impl_.flags_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageFade, _impl_.color_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _impl_.command_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _impl_.amplitude_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _impl_.frequency_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShake, _impl_.duration_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageShakeDir, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShakeDir, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageShakeDir, _impl_.shake_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShakeDir, _impl_.direction_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _impl_.command_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _impl_.amplitude_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _impl_.frequency_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageWaterShake, _impl_.duration_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_.command_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_.ease_in_out_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_.angle_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageScreenTilt, _impl_.time_),
  1,
  2,
  0,
  3,
  4,
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText, _impl_.playerindex_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText, _impl_.text_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText, _impl_.chat_),
  2,
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.entityindex_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.chat_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.messagename_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.param1_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.param2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.param3_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayText2, _impl_.param4_),
  6,
  5,
  0,
  1,
  2,
  3,
  4,
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.channel_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.x_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.y_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.color1_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.color2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.effect_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudMsg, _impl_.message_),
  1,
  2,
  3,
  4,
  5,
  6,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudText, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudText, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageHudText, _impl_.message_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageTextMsg, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageTextMsg, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageTextMsg, _impl_.dest_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageTextMsg, _impl_.param_),
  0,
  ~0u,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMessageGameTitle, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMessageResetHUD, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageSendAudio, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSendAudio, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageSendAudio, _impl_.soundname_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSendAudio, _impl_.stop_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _impl_.parameter_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _impl_.name_hash_code_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _impl_.value_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAudioParameter, _impl_.int_value_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageVoiceMask, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageVoiceMask, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageVoiceMask, _impl_.gamerules_masks_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageVoiceMask, _impl_.ban_masks_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageVoiceMask, _impl_.mod_enable_),
  ~0u,
  ~0u,
  0,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestState, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRumble, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRumble, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRumble, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRumble, _impl_.data_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRumble, _impl_.flags_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayTextChannel, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayTextChannel, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayTextChannel, _impl_.player_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayTextChannel, _impl_.channel_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageSayTextChannel, _impl_.text_),
  1,
  2,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.color_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.text_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.reset_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.context_player_slot_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.context_value_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageColoredText, _impl_.context_team_id_),
  1,
  0,
  2,
  5,
  3,
  4,
  PROTOBUF_FIELD_OFFSET(::CUserMessageItemPickup, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageItemPickup, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageItemPickup, _impl_.itemname_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageAmmoDenied, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAmmoDenied, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageAmmoDenied, _impl_.ammo_id_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _impl_.validslots_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _impl_.displaytime_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _impl_.needmore_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageShowMenu, _impl_.menustring_),
  1,
  2,
  3,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCreditsMsg, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCreditsMsg, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCreditsMsg, _impl_.rolltype_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCreditsMsg, _impl_.logo_length_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePlayJingle, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePlayJingle, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePlayJingle, _impl_.entity_msg_),
  0,
  PROTOBUF_FIELD_OFFSET(::CEntityMessageScreenOverlay, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageScreenOverlay, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessageScreenOverlay, _impl_.start_effect_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageScreenOverlay, _impl_.entity_msg_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CEntityMessageRemoveAllDecals, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageRemoveAllDecals, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessageRemoveAllDecals, _impl_.remove_decals_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageRemoveAllDecals, _impl_.entity_msg_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePropagateForce, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePropagateForce, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePropagateForce, _impl_.impulse_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessagePropagateForce, _impl_.entity_msg_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.origin_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.entityindex_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.radius_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.color_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.beams_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.thick_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageDoSpark, _impl_.entity_msg_),
  0,
  7,
  2,
  3,
  4,
  5,
  6,
  1,
  PROTOBUF_FIELD_OFFSET(::CEntityMessageFixAngle, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageFixAngle, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CEntityMessageFixAngle, _impl_.relative_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageFixAngle, _impl_.angle_),
  PROTOBUF_FIELD_OFFSET(::CEntityMessageFixAngle, _impl_.entity_msg_),
  2,
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition_Transition_DataDriven, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition_Transition_DataDriven, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition_Transition_DataDriven, _impl_.filename_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition_Transition_DataDriven, _impl_.attach_ent_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition_Transition_DataDriven, _impl_.duration_),
  0,
  2,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition, _impl_.camera_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageCameraTransition, _impl_.params_data_driven_),
  1,
  2,
  0,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ReleaseParticleIndex, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.particle_name_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.attach_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.entity_handle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.entity_handle_for_modifiers_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.apply_voice_ban_rules_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.team_behavior_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.control_point_configuration_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.cluster_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.endcap_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreateParticle, _impl_.aggregation_position_),
  2,
  3,
  8,
  9,
  5,
  4,
  0,
  6,
  7,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticle, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticle, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticle, _impl_.destroy_immediately_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleInvolving, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleInvolving, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleInvolving, _impl_.destroy_immediately_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleInvolving, _impl_.entity_handle_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.particle_name_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.entity_handle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.destroy_immediately_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.play_endcap_),
  0,
  3,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _impl_.position_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _impl_.forward_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.forward_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.deprecated_right_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.up_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.left_),
  4,
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.position_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.orientation_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.interpolation_interval_),
  2,
  0,
  1,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFallback, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFallback, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFallback, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleFallback, _impl_.position_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOffset, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOffset, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOffset, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOffset, _impl_.origin_offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleOffset, _impl_.angle_offset_),
  2,
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.entity_handle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.attach_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.attachment_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.fallback_position_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.include_wearables_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.offset_position_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.offset_angles_),
  3,
  7,
  4,
  5,
  0,
  6,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleSetFrozen, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleSetFrozen, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleSetFrozen, _impl_.set_frozen_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleSetFrozen, _impl_.transition_duration_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleShouldDraw, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleShouldDraw, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateParticleShouldDraw, _impl_.should_draw_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ChangeControlPointAttachment, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_.attachment_old_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_.attachment_new_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_.entity_handle_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateEntityPosition, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateEntityPosition, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateEntityPosition, _impl_.entity_handle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateEntityPosition, _impl_.position_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleFoWProperties, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_.fow_control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_.fow_control_point2_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_.fow_radius_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleShouldCheckFoW, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleShouldCheckFoW, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleShouldCheckFoW, _impl_.check_fow_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointModel, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointModel, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointModel, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointModel, _impl_.model_name_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointSnapshot, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointSnapshot, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointSnapshot, _impl_.control_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetControlPointSnapshot, _impl_.snapshot_name_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleText, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleText, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleText, _impl_.text_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetTextureAttribute, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetTextureAttribute, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetTextureAttribute, _impl_.attribute_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetTextureAttribute, _impl_.texture_name_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectGenericFlag, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectGenericFlag, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectGenericFlag, _impl_.flag_value_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _impl_.tint_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _impl_.desat_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleSkipToTime, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleSkipToTime, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleSkipToTime, _impl_.skip_to_time_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleCanFreeze, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleCanFreeze, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleCanFreeze, _impl_.can_freeze_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride, _impl_.freeze_transition_override_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_FreezeParticleInvolving, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_.set_frozen_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_.transition_duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_.entity_handle_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddModellistOverrideElement, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_.model_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_.spawn_probability_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_.groupid_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ClearModellistOverride, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ClearModellistOverride, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_ClearModellistOverride, _impl_.groupid_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _impl_.value_name_hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _impl_.value_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _impl_.value_name_hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _impl_.value_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_.value_name_hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_.angles_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_.translation_),
  2,
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext, _impl_.value_name_hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext, _impl_.ent_index_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext, _impl_.float_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext, _impl_.vector_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext, _impl_.transform_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleNamedValueContext, _impl_.ehandle_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreatePhysicsSim, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreatePhysicsSim, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreatePhysicsSim, _impl_.prop_group_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreatePhysicsSim, _impl_.use_high_quality_simulation_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_CreatePhysicsSim, _impl_.max_particle_count_),
  0,
  1,
  2,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_DestroyPhysicsSim, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetVData, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetVData, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetVData, _impl_.vdata_name_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetMaterialOverride, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetMaterialOverride, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetMaterialOverride, _impl_.material_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetMaterialOverride, _impl_.include_children_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.active_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.bounds_mins_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.bounds_maxs_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.fan_origin_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.fan_origin_offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.fan_direction_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.force_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.fan_force_curve_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.falloff_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.pull_towards_point_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.curve_min_dist_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.curve_max_dist_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.fan_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.cone_start_radius_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.cone_end_radius_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.cone_length_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.entity_handle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_AddFan, _impl_.attachment_name_),
  7,
  2,
  3,
  4,
  5,
  6,
  10,
  0,
  8,
  9,
  11,
  12,
  13,
  14,
  15,
  16,
  17,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.active_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.fan_origin_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.fan_origin_offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.fan_direction_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.fan_ramp_ratio_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.bounds_mins_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_UpdateFan, _impl_.bounds_maxs_),
  5,
  0,
  1,
  2,
  6,
  3,
  4,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_RemoveFan, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleClusterGrowth, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleClusterGrowth, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleClusterGrowth, _impl_.duration_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager_SetParticleClusterGrowth, _impl_.origin_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _internal_metadata_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_._extensions_),
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.type_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.release_particle_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.create_particle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.destroy_particle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.destroy_particle_involving_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_fwd_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_orient_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_fallback_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_ent_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_should_draw_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_set_frozen_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.change_control_point_attachment_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_entity_position_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_particle_fow_properties_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_particle_text_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_particle_should_check_fow_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_control_point_model_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_control_point_snapshot_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_texture_attribute_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_scene_object_generic_flag_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_scene_object_tint_and_desat_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.destroy_particle_named_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.particle_skip_to_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.particle_can_freeze_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_named_value_context_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_particle_transform_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.particle_freeze_transition_override_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.freeze_particle_involving_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.add_modellist_override_element_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.clear_modellist_override_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.create_physics_sim_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.destroy_physics_sim_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_vdata_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_material_override_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.add_fan_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.update_fan_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.set_particle_cluster_growth_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_ParticleManager, _impl_.remove_fan_),
  39,
  40,
  0,
  1,
  2,
  3,
  4,
  5,
  6,
  7,
  8,
  9,
  10,
  11,
  12,
  13,
  14,
  15,
  16,
  17,
  18,
  19,
  20,
  21,
  22,
  23,
  24,
  25,
  26,
  27,
  28,
  29,
  30,
  31,
  32,
  33,
  34,
  35,
  36,
  37,
  38,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_HudError, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_HudError, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_HudError, _impl_.order_id_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMsg_CustomGameEvent, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_CustomGameEvent, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMsg_CustomGameEvent, _impl_.event_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMsg_CustomGameEvent, _impl_.data_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _impl_.hand_id_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _impl_.effect_amplitude_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _impl_.effect_frequency_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerPulse, _impl_.effect_duration_),
  0,
  1,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerEffect, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerEffect, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerEffect, _impl_.hand_id_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerEffect, _impl_.effect_name_hash_code_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageHapticsManagerEffect, _impl_.effect_scale_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMessageAnimStateGraphState, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAnimStateGraphState, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageAnimStateGraphState, _impl_.entity_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageAnimStateGraphState, _impl_.data_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageUpdateCssClasses, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageUpdateCssClasses, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageUpdateCssClasses, _impl_.target_world_panel_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageUpdateCssClasses, _impl_.css_classes_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageUpdateCssClasses, _impl_.is_add_),
  1,
  0,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMessageServerFrameTime, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageServerFrameTime, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageServerFrameTime, _impl_.frame_time_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageLagCompensationError, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageLagCompensationError, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageLagCompensationError, _impl_.distance_),
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDllStatus, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDllStatus, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDllStatus, _impl_.dll_action_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDllStatus, _impl_.full_report_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_.util1_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_.util2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_.util3_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_.util4_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestUtilAction, _impl_.util5_),
  0,
  1,
  2,
  3,
  4,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _impl_.hash_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _impl_.crc_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response_ItemDetail, _impl_.name_),
  1,
  2,
  3,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.crc_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.item_count_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.crc2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.item_count2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.crc_part_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.crc_part2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.client_timestamp_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.platform_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.itemdetails_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.itemgroup_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.total_count_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_UtilMsg_Response, _impl_.total_count2_),
  0,
  1,
  2,
  3,
  ~0u,
  ~0u,
  4,
  5,
  ~0u,
  6,
  7,
  8,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _impl_.id_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _impl_.extended_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _impl_.value_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CVDiagnostic, _impl_.string_value_),
  1,
  2,
  3,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _impl_.base_addr_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _impl_.size_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus_CModule, _impl_.timestamp_),
  1,
  0,
  2,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.file_report_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.command_line_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.total_files_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.process_id_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.osversion_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.client_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.diagnostics_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_DllStatus, _impl_.modules_),
  0,
  1,
  2,
  3,
  5,
  4,
  ~0u,
  ~0u,
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestInventory, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestInventory, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestInventory, _impl_.inventory_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestInventory, _impl_.offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestInventory, _impl_.options_),
  0,
  1,
  2,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.primary_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.first_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_detail_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_hash_),
  5,
  2,
  3,
  4,
  7,
  0,
  1,
  6,
  8,
  9,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.crc_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.item_count_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.osversion_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.perf_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.client_timestamp_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.platform_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.inventories_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.inventories2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.inventories3_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.inv_type_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.build_version_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.instance_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Inventory_Response, _impl_.start_time_),
  0,
  1,
  2,
  3,
  4,
  5,
  ~0u,
  ~0u,
  ~0u,
  6,
  7,
  9,
  8,
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.param_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.length_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.type_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.base_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.range_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.extent_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.detail_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.alias_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.vardetail_),
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic_Diagnostic, _impl_.context_),
  4,
  3,
  5,
  6,
  7,
  8,
  9,
  10,
  11,
  0,
  1,
  2,
  12,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessageRequestDiagnostic, _impl_.diagnostics_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.offset_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.param_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.length_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.detail_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.base_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.range_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.type_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.alias_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.backup_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.context_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.control_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.augment_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response_Diagnostic, _impl_.placebo_),
  5,
  4,
  6,
  8,
  0,
  7,
  10,
  9,
  1,
  2,
  3,
  14,
  11,
  12,
  13,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.diagnostics_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.build_version_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.instance_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.start_time_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.osversion_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_Diagnostic_Response, _impl_.platform_),
  ~0u,
  0,
  1,
  2,
  3,
  4,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_.item_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_.value1_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_.value2_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_.detail1_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_ExtraUserData, _impl_.detail2_),
  2,
  0,
  1,
  ~0u,
  ~0u,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound_Criteria, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound_Criteria, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound_Criteria, _impl_.name_symbol_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound_Criteria, _impl_.value_),
  1,
  0,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.ent_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.rule_name_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.response_value_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.response_concept_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.criteria_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.int_criteria_names_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.int_criteria_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.float_criteria_names_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.float_criteria_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.symbol_criteria_names_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.symbol_criteria_values_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_NotifyResponseFound, _impl_.speak_result_),
  4,
  0,
  1,
  2,
  ~0u,
  ~0u,
  ~0u,
  ~0u,
  ~0u,
  ~0u,
  ~0u,
  3,
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.ent_index_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.player_slots_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.response_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.ent_origin_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.pre_delay_),
  PROTOBUF_FIELD_OFFSET(::CUserMessage_PlayResponseConditional, _impl_.mix_priority_),
  4,
  ~0u,
  0,
  1,
  2,
  3,
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, 7, -1, sizeof(::CUserMessageAchievementEvent)},
  { 8, 18, -1, sizeof(::CUserMessageCloseCaption)},
  { 22, 32, -1, sizeof(::CUserMessageCloseCaptionDirect)},
  { 36, 46, -1, sizeof(::CUserMessageCloseCaptionPlaceholder)},
  { 50, 57, -1, sizeof(::CUserMessageCurrentTimescale)},
  { 58, 68, -1, sizeof(::CUserMessageDesiredTimescale)},
  { 72, 82, -1, sizeof(::CUserMessageFade)},
  { 86, 96, -1, sizeof(::CUserMessageShake)},
  { 100, 108, -1, sizeof(::CUserMessageShakeDir)},
  { 110, 120, -1, sizeof(::CUserMessageWaterShake)},
  { 124, 135, -1, sizeof(::CUserMessageScreenTilt)},
  { 140, 149, -1, sizeof(::CUserMessageSayText)},
  { 152, 165, -1, sizeof(::CUserMessageSayText2)},
  { 172, 185, -1, sizeof(::CUserMessageHudMsg)},
  { 192, 199, -1, sizeof(::CUserMessageHudText)},
  { 200, 208, -1, sizeof(::CUserMessageTextMsg)},
  { 210, -1, -1, sizeof(::CUserMessageGameTitle)},
  { 216, -1, -1, sizeof(::CUserMessageResetHUD)},
  { 222, 230, -1, sizeof(::CUserMessageSendAudio)},
  { 232, 242, -1, sizeof(::CUserMessageAudioParameter)},
  { 246, 255, -1, sizeof(::CUserMessageVoiceMask)},
  { 258, -1, -1, sizeof(::CUserMessageRequestState)},
  { 264, 273, -1, sizeof(::CUserMessageRumble)},
  { 276, 285, -1, sizeof(::CUserMessageSayTextChannel)},
  { 288, 300, -1, sizeof(::CUserMessageColoredText)},
  { 306, 313, -1, sizeof(::CUserMessageItemPickup)},
  { 314, 321, -1, sizeof(::CUserMessageAmmoDenied)},
  { 322, 332, -1, sizeof(::CUserMessageShowMenu)},
  { 336, 344, -1, sizeof(::CUserMessageCreditsMsg)},
  { 346, 353, -1, sizeof(::CEntityMessagePlayJingle)},
  { 354, 362, -1, sizeof(::CEntityMessageScreenOverlay)},
  { 364, 372, -1, sizeof(::CEntityMessageRemoveAllDecals)},
  { 374, 382, -1, sizeof(::CEntityMessagePropagateForce)},
  { 384, 398, -1, sizeof(::CEntityMessageDoSpark)},
  { 406, 415, -1, sizeof(::CEntityMessageFixAngle)},
  { 418, 427, -1, sizeof(::CUserMessageCameraTransition_Transition_DataDriven)},
  { 430, 439, -1, sizeof(::CUserMessageCameraTransition)},
  { 442, -1, -1, sizeof(::CUserMsg_ParticleManager_ReleaseParticleIndex)},
  { 448, 464, -1, sizeof(::CUserMsg_ParticleManager_CreateParticle)},
  { 474, 481, -1, sizeof(::CUserMsg_ParticleManager_DestroyParticle)},
  { 482, 490, -1, sizeof(::CUserMsg_ParticleManager_DestroyParticleInvolving)},
  { 492, 502, -1, sizeof(::CUserMsg_ParticleManager_DestroyParticleNamed)},
  { 506, 514, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE)},
  { 516, 524, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE)},
  { 526, 537, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE)},
  { 542, 552, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleTransform)},
  { 556, 564, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleFallback)},
  { 566, 575, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleOffset)},
  { 578, 592, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleEnt)},
  { 600, 608, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleSetFrozen)},
  { 610, 617, -1, sizeof(::CUserMsg_ParticleManager_UpdateParticleShouldDraw)},
  { 618, 627, -1, sizeof(::CUserMsg_ParticleManager_ChangeControlPointAttachment)},
  { 630, 638, -1, sizeof(::CUserMsg_ParticleManager_UpdateEntityPosition)},
  { 640, 649, -1, sizeof(::CUserMsg_ParticleManager_SetParticleFoWProperties)},
  { 652, 659, -1, sizeof(::CUserMsg_ParticleManager_SetParticleShouldCheckFoW)},
  { 660, 668, -1, sizeof(::CUserMsg_ParticleManager_SetControlPointModel)},
  { 670, 678, -1, sizeof(::CUserMsg_ParticleManager_SetControlPointSnapshot)},
  { 680, 687, -1, sizeof(::CUserMsg_ParticleManager_SetParticleText)},
  { 688, 696, -1, sizeof(::CUserMsg_ParticleManager_SetTextureAttribute)},
  { 698, 705, -1, sizeof(::CUserMsg_ParticleManager_SetSceneObjectGenericFlag)},
  { 706, 714, -1, sizeof(::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat)},
  { 716, 723, -1, sizeof(::CUserMsg_ParticleManager_ParticleSkipToTime)},
  { 724, 731, -1, sizeof(::CUserMsg_ParticleManager_ParticleCanFreeze)},
  { 732, 739, -1, sizeof(::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride)},
  { 740, 749, -1, sizeof(::CUserMsg_ParticleManager_FreezeParticleInvolving)},
  { 752, 761, -1, sizeof(::CUserMsg_ParticleManager_AddModellistOverrideElement)},
  { 764, 771, -1, sizeof(::CUserMsg_ParticleManager_ClearModellistOverride)},
  { 772, 780, -1, sizeof(::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue)},
  { 782, 790, -1, sizeof(::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue)},
  { 792, 801, -1, sizeof(::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue)},
  { 804, 812, -1, sizeof(::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext)},
  { 814, -1, -1, sizeof(::CUserMsg_ParticleManager_SetParticleNamedValueContext)},
  { 824, 833, -1, sizeof(::CUserMsg_ParticleManager_CreatePhysicsSim)},
  { 836, -1, -1, sizeof(::CUserMsg_ParticleManager_DestroyPhysicsSim)},
  { 842, 849, -1, sizeof(::CUserMsg_ParticleManager_SetVData)},
  { 850, 858, -1, sizeof(::CUserMsg_ParticleManager_SetMaterialOverride)},
  { 860, 884, -1, sizeof(::CUserMsg_ParticleManager_AddFan)},
  { 902, 915, -1, sizeof(::CUserMsg_ParticleManager_UpdateFan)},
  { 922, -1, -1, sizeof(::CUserMsg_ParticleManager_RemoveFan)},
  { 928, 936, -1, sizeof(::CUserMsg_ParticleManager_SetParticleClusterGrowth)},
  { 938, 985, -1, sizeof(::CUserMsg_ParticleManager)},
  { 1026, 1033, -1, sizeof(::CUserMsg_HudError)},
  { 1034, 1042, -1, sizeof(::CUserMsg_CustomGameEvent)},
  { 1044, 1054, -1, sizeof(::CUserMessageHapticsManagerPulse)},
  { 1058, 1067, -1, sizeof(::CUserMessageHapticsManagerEffect)},
  { 1070, 1078, -1, sizeof(::CUserMessageAnimStateGraphState)},
  { 1080, 1089, -1, sizeof(::CUserMessageUpdateCssClasses)},
  { 1092, 1099, -1, sizeof(::CUserMessageServerFrameTime)},
  { 1100, 1107, -1, sizeof(::CUserMessageLagCompensationError)},
  { 1108, 1116, -1, sizeof(::CUserMessageRequestDllStatus)},
  { 1118, 1129, -1, sizeof(::CUserMessageRequestUtilAction)},
  { 1134, 1144, -1, sizeof(::CUserMessage_UtilMsg_Response_ItemDetail)},
  { 1148, 1166, -1, sizeof(::CUserMessage_UtilMsg_Response)},
  { 1178, 1188, -1, sizeof(::CUserMessage_DllStatus_CVDiagnostic)},
  { 1192, 1202, -1, sizeof(::CUserMessage_DllStatus_CModule)},
  { 1206, 1220, -1, sizeof(::CUserMessage_DllStatus)},
  { 1228, 1237, -1, sizeof(::CUserMessageRequestInventory)},
  { 1240, 1256, -1, sizeof(::CUserMessage_Inventory_Response_InventoryDetail)},
  { 1266, 1285, -1, sizeof(::CUserMessage_Inventory_Response)},
  { 1298, 1317, -1, sizeof(::CUserMessageRequestDiagnostic_Diagnostic)},
  { 1330, -1, -1, sizeof(::CUserMessageRequestDiagnostic)},
  { 1337, 1358, -1, sizeof(::CUserMessage_Diagnostic_Response_Diagnostic)},
  { 1373, 1385, -1, sizeof(::CUserMessage_Diagnostic_Response)},
  { 1391, 1402, -1, sizeof(::CUserMessage_ExtraUserData)},
  { 1407, 1415, -1, sizeof(::CUserMessage_NotifyResponseFound_Criteria)},
  { 1417, 1435, -1, sizeof(::CUserMessage_NotifyResponseFound)},
  { 1447, 1459, -1, sizeof(::CUserMessage_PlayResponseConditional)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::_CUserMessageAchievementEvent_default_instance_._instance,
  &::_CUserMessageCloseCaption_default_instance_._instance,
  &::_CUserMessageCloseCaptionDirect_default_instance_._instance,
  &::_CUserMessageCloseCaptionPlaceholder_default_instance_._instance,
  &::_CUserMessageCurrentTimescale_default_instance_._instance,
  &::_CUserMessageDesiredTimescale_default_instance_._instance,
  &::_CUserMessageFade_default_instance_._instance,
  &::_CUserMessageShake_default_instance_._instance,
  &::_CUserMessageShakeDir_default_instance_._instance,
  &::_CUserMessageWaterShake_default_instance_._instance,
  &::_CUserMessageScreenTilt_default_instance_._instance,
  &::_CUserMessageSayText_default_instance_._instance,
  &::_CUserMessageSayText2_default_instance_._instance,
  &::_CUserMessageHudMsg_default_instance_._instance,
  &::_CUserMessageHudText_default_instance_._instance,
  &::_CUserMessageTextMsg_default_instance_._instance,
  &::_CUserMessageGameTitle_default_instance_._instance,
  &::_CUserMessageResetHUD_default_instance_._instance,
  &::_CUserMessageSendAudio_default_instance_._instance,
  &::_CUserMessageAudioParameter_default_instance_._instance,
  &::_CUserMessageVoiceMask_default_instance_._instance,
  &::_CUserMessageRequestState_default_instance_._instance,
  &::_CUserMessageRumble_default_instance_._instance,
  &::_CUserMessageSayTextChannel_default_instance_._instance,
  &::_CUserMessageColoredText_default_instance_._instance,
  &::_CUserMessageItemPickup_default_instance_._instance,
  &::_CUserMessageAmmoDenied_default_instance_._instance,
  &::_CUserMessageShowMenu_default_instance_._instance,
  &::_CUserMessageCreditsMsg_default_instance_._instance,
  &::_CEntityMessagePlayJingle_default_instance_._instance,
  &::_CEntityMessageScreenOverlay_default_instance_._instance,
  &::_CEntityMessageRemoveAllDecals_default_instance_._instance,
  &::_CEntityMessagePropagateForce_default_instance_._instance,
  &::_CEntityMessageDoSpark_default_instance_._instance,
  &::_CEntityMessageFixAngle_default_instance_._instance,
  &::_CUserMessageCameraTransition_Transition_DataDriven_default_instance_._instance,
  &::_CUserMessageCameraTransition_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ReleaseParticleIndex_default_instance_._instance,
  &::_CUserMsg_ParticleManager_CreateParticle_default_instance_._instance,
  &::_CUserMsg_ParticleManager_DestroyParticle_default_instance_._instance,
  &::_CUserMsg_ParticleManager_DestroyParticleInvolving_default_instance_._instance,
  &::_CUserMsg_ParticleManager_DestroyParticleNamed_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticle_OBSOLETE_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleTransform_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleFallback_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleOffset_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleEnt_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleSetFrozen_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateParticleShouldDraw_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ChangeControlPointAttachment_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateEntityPosition_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleFoWProperties_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleShouldCheckFoW_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetControlPointModel_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetControlPointSnapshot_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleText_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetTextureAttribute_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetSceneObjectGenericFlag_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetSceneObjectTintAndDesat_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ParticleSkipToTime_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ParticleCanFreeze_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ParticleFreezeTransitionOverride_default_instance_._instance,
  &::_CUserMsg_ParticleManager_FreezeParticleInvolving_default_instance_._instance,
  &::_CUserMsg_ParticleManager_AddModellistOverrideElement_default_instance_._instance,
  &::_CUserMsg_ParticleManager_ClearModellistOverride_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleNamedValueContext_default_instance_._instance,
  &::_CUserMsg_ParticleManager_CreatePhysicsSim_default_instance_._instance,
  &::_CUserMsg_ParticleManager_DestroyPhysicsSim_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetVData_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetMaterialOverride_default_instance_._instance,
  &::_CUserMsg_ParticleManager_AddFan_default_instance_._instance,
  &::_CUserMsg_ParticleManager_UpdateFan_default_instance_._instance,
  &::_CUserMsg_ParticleManager_RemoveFan_default_instance_._instance,
  &::_CUserMsg_ParticleManager_SetParticleClusterGrowth_default_instance_._instance,
  &::_CUserMsg_ParticleManager_default_instance_._instance,
  &::_CUserMsg_HudError_default_instance_._instance,
  &::_CUserMsg_CustomGameEvent_default_instance_._instance,
  &::_CUserMessageHapticsManagerPulse_default_instance_._instance,
  &::_CUserMessageHapticsManagerEffect_default_instance_._instance,
  &::_CUserMessageAnimStateGraphState_default_instance_._instance,
  &::_CUserMessageUpdateCssClasses_default_instance_._instance,
  &::_CUserMessageServerFrameTime_default_instance_._instance,
  &::_CUserMessageLagCompensationError_default_instance_._instance,
  &::_CUserMessageRequestDllStatus_default_instance_._instance,
  &::_CUserMessageRequestUtilAction_default_instance_._instance,
  &::_CUserMessage_UtilMsg_Response_ItemDetail_default_instance_._instance,
  &::_CUserMessage_UtilMsg_Response_default_instance_._instance,
  &::_CUserMessage_DllStatus_CVDiagnostic_default_instance_._instance,
  &::_CUserMessage_DllStatus_CModule_default_instance_._instance,
  &::_CUserMessage_DllStatus_default_instance_._instance,
  &::_CUserMessageRequestInventory_default_instance_._instance,
  &::_CUserMessage_Inventory_Response_InventoryDetail_default_instance_._instance,
  &::_CUserMessage_Inventory_Response_default_instance_._instance,
  &::_CUserMessageRequestDiagnostic_Diagnostic_default_instance_._instance,
  &::_CUserMessageRequestDiagnostic_default_instance_._instance,
  &::_CUserMessage_Diagnostic_Response_Diagnostic_default_instance_._instance,
  &::_CUserMessage_Diagnostic_Response_default_instance_._instance,
  &::_CUserMessage_ExtraUserData_default_instance_._instance,
  &::_CUserMessage_NotifyResponseFound_Criteria_default_instance_._instance,
  &::_CUserMessage_NotifyResponseFound_default_instance_._instance,
  &::_CUserMessage_PlayResponseConditional_default_instance_._instance,
};

const char descriptor_table_protodef_usermessages_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\022usermessages.proto\032\026networkbasetypes.p"
  "roto\"3\n\034CUserMessageAchievementEvent\022\023\n\013"
  "achievement\030\001 \001(\r\"f\n\030CUserMessageCloseCa"
  "ption\022\014\n\004hash\030\001 \001(\007\022\020\n\010duration\030\002 \001(\002\022\023\n"
  "\013from_player\030\003 \001(\010\022\025\n\tent_index\030\004 \001(\005:\002-"
  "1\"l\n\036CUserMessageCloseCaptionDirect\022\014\n\004h"
  "ash\030\001 \001(\007\022\020\n\010duration\030\002 \001(\002\022\023\n\013from_play"
  "er\030\003 \001(\010\022\025\n\tent_index\030\004 \001(\005:\002-1\"s\n#CUser"
  "MessageCloseCaptionPlaceholder\022\016\n\006string"
  "\030\001 \001(\t\022\020\n\010duration\030\002 \001(\002\022\023\n\013from_player\030"
  "\003 \001(\010\022\025\n\tent_index\030\004 \001(\005:\002-1\"/\n\034CUserMes"
  "sageCurrentTimescale\022\017\n\007current\030\001 \001(\002\"y\n"
  "\034CUserMessageDesiredTimescale\022\017\n\007desired"
  "\030\001 \001(\002\022\024\n\014acceleration\030\002 \001(\002\022\024\n\014minblend"
  "rate\030\003 \001(\002\022\034\n\024blenddeltamultiplier\030\004 \001(\002"
  "\"U\n\020CUserMessageFade\022\020\n\010duration\030\001 \001(\r\022\021"
  "\n\thold_time\030\002 \001(\r\022\r\n\005flags\030\003 \001(\r\022\r\n\005colo"
  "r\030\004 \001(\007\"\\\n\021CUserMessageShake\022\017\n\007command\030"
  "\001 \001(\r\022\021\n\tamplitude\030\002 \001(\002\022\021\n\tfrequency\030\003 "
  "\001(\002\022\020\n\010duration\030\004 \001(\002\"Y\n\024CUserMessageSha"
  "keDir\022!\n\005shake\030\001 \001(\0132\022.CUserMessageShake"
  "\022\036\n\tdirection\030\002 \001(\0132\013.CMsgVector\"a\n\026CUse"
  "rMessageWaterShake\022\017\n\007command\030\001 \001(\r\022\021\n\ta"
  "mplitude\030\002 \001(\002\022\021\n\tfrequency\030\003 \001(\002\022\020\n\010dur"
  "ation\030\004 \001(\002\"z\n\026CUserMessageScreenTilt\022\017\n"
  "\007command\030\001 \001(\r\022\023\n\013ease_in_out\030\002 \001(\010\022\032\n\005a"
  "ngle\030\003 \001(\0132\013.CMsgVector\022\020\n\010duration\030\004 \001("
  "\002\022\014\n\004time\030\005 \001(\002\"J\n\023CUserMessageSayText\022\027"
  "\n\013playerindex\030\001 \001(\005:\002-1\022\014\n\004text\030\002 \001(\t\022\014\n"
  "\004chat\030\003 \001(\010\"\222\001\n\024CUserMessageSayText2\022\027\n\013"
  "entityindex\030\001 \001(\005:\002-1\022\014\n\004chat\030\002 \001(\010\022\023\n\013m"
  "essagename\030\003 \001(\t\022\016\n\006param1\030\004 \001(\t\022\016\n\006para"
  "m2\030\005 \001(\t\022\016\n\006param3\030\006 \001(\t\022\016\n\006param4\030\007 \001(\t"
  "\"|\n\022CUserMessageHudMsg\022\017\n\007channel\030\001 \001(\r\022"
  "\t\n\001x\030\002 \001(\002\022\t\n\001y\030\003 \001(\002\022\016\n\006color1\030\004 \001(\007\022\016\n"
  "\006color2\030\005 \001(\007\022\016\n\006effect\030\006 \001(\r\022\017\n\007message"
  "\030\013 \001(\t\"&\n\023CUserMessageHudText\022\017\n\007message"
  "\030\001 \001(\t\"2\n\023CUserMessageTextMsg\022\014\n\004dest\030\001 "
  "\001(\r\022\r\n\005param\030\002 \003(\t\"\027\n\025CUserMessageGameTi"
  "tle\"\026\n\024CUserMessageResetHUD\"8\n\025CUserMess"
  "ageSendAudio\022\021\n\tsoundname\030\001 \001(\t\022\014\n\004stop\030"
  "\002 \001(\010\"n\n\032CUserMessageAudioParameter\022\026\n\016p"
  "arameter_type\030\001 \001(\r\022\026\n\016name_hash_code\030\002 "
  "\001(\r\022\r\n\005value\030\003 \001(\002\022\021\n\tint_value\030\004 \001(\r\"W\n"
  "\025CUserMessageVoiceMask\022\027\n\017gamerules_mask"
  "s\030\001 \003(\r\022\021\n\tban_masks\030\002 \003(\r\022\022\n\nmod_enable"
  "\030\003 \001(\010\"\032\n\030CUserMessageRequestState\"@\n\022CU"
  "serMessageRumble\022\r\n\005index\030\001 \001(\005\022\014\n\004data\030"
  "\002 \001(\005\022\r\n\005flags\030\003 \001(\005\"K\n\032CUserMessageSayT"
  "extChannel\022\016\n\006player\030\001 \001(\005\022\017\n\007channel\030\002 "
  "\001(\005\022\014\n\004text\030\003 \001(\t\"\226\001\n\027CUserMessageColore"
  "dText\022\r\n\005color\030\001 \001(\r\022\014\n\004text\030\002 \001(\t\022\r\n\005re"
  "set\030\003 \001(\010\022\037\n\023context_player_slot\030\004 \001(\005:\002"
  "-1\022\025\n\rcontext_value\030\005 \001(\005\022\027\n\017context_tea"
  "m_id\030\006 \001(\005\"*\n\026CUserMessageItemPickup\022\020\n\010"
  "itemname\030\001 \001(\t\")\n\026CUserMessageAmmoDenied"
  "\022\017\n\007ammo_id\030\001 \001(\r\"e\n\024CUserMessageShowMen"
  "u\022\022\n\nvalidslots\030\001 \001(\r\022\023\n\013displaytime\030\002 \001"
  "(\r\022\020\n\010needmore\030\003 \001(\010\022\022\n\nmenustring\030\004 \001(\t"
  "\"V\n\026CUserMessageCreditsMsg\022\'\n\010rolltype\030\001"
  " \001(\0162\n.eRollType:\tROLL_NONE\022\023\n\013logo_leng"
  "th\030\002 \001(\002\";\n\030CEntityMessagePlayJingle\022\037\n\n"
  "entity_msg\030\001 \001(\0132\013.CEntityMsg\"T\n\033CEntity"
  "MessageScreenOverlay\022\024\n\014start_effect\030\001 \001"
  "(\010\022\037\n\nentity_msg\030\002 \001(\0132\013.CEntityMsg\"W\n\035C"
  "EntityMessageRemoveAllDecals\022\025\n\rremove_d"
  "ecals\030\001 \001(\010\022\037\n\nentity_msg\030\002 \001(\0132\013.CEntit"
  "yMsg\"]\n\034CEntityMessagePropagateForce\022\034\n\007"
  "impulse\030\001 \001(\0132\013.CMsgVector\022\037\n\nentity_msg"
  "\030\002 \001(\0132\013.CEntityMsg\"\275\001\n\025CEntityMessageDo"
  "Spark\022\033\n\006origin\030\001 \001(\0132\013.CMsgVector\022\027\n\013en"
  "tityindex\030\002 \001(\005:\002-1\022\016\n\006radius\030\003 \001(\002\022\r\n\005c"
  "olor\030\004 \001(\007\022\r\n\005beams\030\005 \001(\r\022\r\n\005thick\030\006 \001(\002"
  "\022\020\n\010duration\030\007 \001(\002\022\037\n\nentity_msg\030\010 \001(\0132\013"
  ".CEntityMsg\"g\n\026CEntityMessageFixAngle\022\020\n"
  "\010relative\030\001 \001(\010\022\032\n\005angle\030\002 \001(\0132\013.CMsgQAn"
  "gle\022\037\n\nentity_msg\030\003 \001(\0132\013.CEntityMsg\"\361\001\n"
  "\034CUserMessageCameraTransition\022\023\n\013camera_"
  "type\030\001 \001(\r\022\020\n\010duration\030\002 \001(\002\022O\n\022params_d"
  "ata_driven\030\003 \001(\01323.CUserMessageCameraTra"
  "nsition.Transition_DataDriven\032Y\n\025Transit"
  "ion_DataDriven\022\020\n\010filename\030\001 \001(\t\022\034\n\020atta"
  "ch_ent_index\030\002 \001(\005:\002-1\022\020\n\010duration\030\003 \001(\002"
  "\"\252=\n\030CUserMsg_ParticleManager\022C\n\004type\030\001 "
  "\002(\0162\021.PARTICLE_MESSAGE:\"GAME_PARTICLE_MA"
  "NAGER_EVENT_CREATE\022\r\n\005index\030\002 \002(\r\022N\n\026rel"
  "ease_particle_index\030\003 \001(\0132..CUserMsg_Par"
  "ticleManager.ReleaseParticleIndex\022A\n\017cre"
  "ate_particle\030\004 \001(\0132(.CUserMsg_ParticleMa"
  "nager.CreateParticle\022C\n\020destroy_particle"
  "\030\005 \001(\0132).CUserMsg_ParticleManager.Destro"
  "yParticle\022V\n\032destroy_particle_involving\030"
  "\006 \001(\01322.CUserMsg_ParticleManager.Destroy"
  "ParticleInvolving\022J\n\017update_particle\030\007 \001"
  "(\01321.CUserMsg_ParticleManager.UpdatePart"
  "icle_OBSOLETE\022Q\n\023update_particle_fwd\030\010 \001"
  "(\01324.CUserMsg_ParticleManager.UpdatePart"
  "icleFwd_OBSOLETE\022W\n\026update_particle_orie"
  "nt\030\t \001(\01327.CUserMsg_ParticleManager.Upda"
  "teParticleOrient_OBSOLETE\022R\n\030update_part"
  "icle_fallback\030\n \001(\01320.CUserMsg_ParticleM"
  "anager.UpdateParticleFallback\022N\n\026update_"
  "particle_offset\030\013 \001(\0132..CUserMsg_Particl"
  "eManager.UpdateParticleOffset\022H\n\023update_"
  "particle_ent\030\014 \001(\0132+.CUserMsg_ParticleMa"
  "nager.UpdateParticleEnt\022W\n\033update_partic"
  "le_should_draw\030\016 \001(\01322.CUserMsg_Particle"
  "Manager.UpdateParticleShouldDraw\022U\n\032upda"
  "te_particle_set_frozen\030\017 \001(\01321.CUserMsg_"
  "ParticleManager.UpdateParticleSetFrozen\022"
  "_\n\037change_control_point_attachment\030\020 \001(\013"
  "26.CUserMsg_ParticleManager.ChangeContro"
  "lPointAttachment\022N\n\026update_entity_positi"
  "on\030\021 \001(\0132..CUserMsg_ParticleManager.Upda"
  "teEntityPosition\022W\n\033set_particle_fow_pro"
  "perties\030\022 \001(\01322.CUserMsg_ParticleManager"
  ".SetParticleFoWProperties\022D\n\021set_particl"
  "e_text\030\023 \001(\0132).CUserMsg_ParticleManager."
  "SetParticleText\022Z\n\035set_particle_should_c"
  "heck_fow\030\024 \001(\01323.CUserMsg_ParticleManage"
  "r.SetParticleShouldCheckFoW\022O\n\027set_contr"
  "ol_point_model\030\025 \001(\0132..CUserMsg_Particle"
  "Manager.SetControlPointModel\022U\n\032set_cont"
  "rol_point_snapshot\030\026 \001(\01321.CUserMsg_Part"
  "icleManager.SetControlPointSnapshot\022L\n\025s"
  "et_texture_attribute\030\027 \001(\0132-.CUserMsg_Pa"
  "rticleManager.SetTextureAttribute\022Z\n\035set"
  "_scene_object_generic_flag\030\030 \001(\01323.CUser"
  "Msg_ParticleManager.SetSceneObjectGeneri"
  "cFlag\022]\n\037set_scene_object_tint_and_desat"
  "\030\031 \001(\01324.CUserMsg_ParticleManager.SetSce"
  "neObjectTintAndDesat\022N\n\026destroy_particle"
  "_named\030\032 \001(\0132..CUserMsg_ParticleManager."
  "DestroyParticleNamed\022K\n\025particle_skip_to"
  "_time\030\033 \001(\0132,.CUserMsg_ParticleManager.P"
  "articleSkipToTime\022H\n\023particle_can_freeze"
  "\030\034 \001(\0132+.CUserMsg_ParticleManager.Partic"
  "leCanFreeze\022W\n\027set_named_value_context\030\035"
  " \001(\01326.CUserMsg_ParticleManager.SetParti"
  "cleNamedValueContext\022T\n\031update_particle_"
  "transform\030\036 \001(\01321.CUserMsg_ParticleManag"
  "er.UpdateParticleTransform\022g\n#particle_f"
  "reeze_transition_override\030\037 \001(\0132:.CUserM"
  "sg_ParticleManager.ParticleFreezeTransit"
  "ionOverride\022T\n\031freeze_particle_involving"
  "\030  \001(\01321.CUserMsg_ParticleManager.Freeze"
  "ParticleInvolving\022]\n\036add_modellist_overr"
  "ide_element\030! \001(\01325.CUserMsg_ParticleMan"
  "ager.AddModellistOverrideElement\022R\n\030clea"
  "r_modellist_override\030\" \001(\01320.CUserMsg_Pa"
  "rticleManager.ClearModellistOverride\022F\n\022"
  "create_physics_sim\030# \001(\0132*.CUserMsg_Part"
  "icleManager.CreatePhysicsSim\022H\n\023destroy_"
  "physics_sim\030$ \001(\0132+.CUserMsg_ParticleMan"
  "ager.DestroyPhysicsSim\0225\n\tset_vdata\030% \001("
  "\0132\".CUserMsg_ParticleManager.SetVData\022L\n"
  "\025set_material_override\030& \001(\0132-.CUserMsg_"
  "ParticleManager.SetMaterialOverride\0221\n\007a"
  "dd_fan\030\' \001(\0132 .CUserMsg_ParticleManager."
  "AddFan\0227\n\nupdate_fan\030( \001(\0132#.CUserMsg_Pa"
  "rticleManager.UpdateFan\022W\n\033set_particle_"
  "cluster_growth\030) \001(\01322.CUserMsg_Particle"
  "Manager.SetParticleClusterGrowth\0227\n\nremo"
  "ve_fan\030* \001(\0132#.CUserMsg_ParticleManager."
  "RemoveFan\032\026\n\024ReleaseParticleIndex\032\276\002\n\016Cr"
  "eateParticle\022\033\n\023particle_name_index\030\001 \001("
  "\006\022\023\n\013attach_type\030\002 \001(\005\022\037\n\rentity_handle\030"
  "\003 \001(\r:\01016777215\022-\n\033entity_handle_for_mod"
  "ifiers\030\004 \001(\r:\01016777215\022\035\n\025apply_voice_ba"
  "n_rules\030\005 \001(\010\022\025\n\rteam_behavior\030\006 \001(\005\022#\n\033"
  "control_point_configuration\030\007 \001(\t\022\017\n\007clu"
  "ster\030\010 \001(\010\022\023\n\013endcap_time\030\t \001(\002\022)\n\024aggre"
  "gation_position\030\n \001(\0132\013.CMsgVector\032.\n\017De"
  "stroyParticle\022\033\n\023destroy_immediately\030\001 \001"
  "(\010\032X\n\030DestroyParticleInvolving\022\033\n\023destro"
  "y_immediately\030\001 \001(\010\022\037\n\rentity_handle\030\003 \001"
  "(\r:\01016777215\032\206\001\n\024DestroyParticleNamed\022\033\n"
  "\023particle_name_index\030\001 \001(\006\022\037\n\rentity_han"
  "dle\030\002 \001(\r:\01016777215\022\033\n\023destroy_immediate"
  "ly\030\003 \001(\010\022\023\n\013play_endcap\030\004 \001(\010\032O\n\027UpdateP"
  "article_OBSOLETE\022\025\n\rcontrol_point\030\001 \001(\005\022"
  "\035\n\010position\030\002 \001(\0132\013.CMsgVector\032Q\n\032Update"
  "ParticleFwd_OBSOLETE\022\025\n\rcontrol_point\030\001 "
  "\001(\005\022\034\n\007forward\030\002 \001(\0132\013.CMsgVector\032\257\001\n\035Up"
  "dateParticleOrient_OBSOLETE\022\025\n\rcontrol_p"
  "oint\030\001 \001(\005\022\034\n\007forward\030\002 \001(\0132\013.CMsgVector"
  "\022%\n\020deprecated_right\030\003 \001(\0132\013.CMsgVector\022"
  "\027\n\002up\030\004 \001(\0132\013.CMsgVector\022\031\n\004left\030\005 \001(\0132\013"
  ".CMsgVector\032\225\001\n\027UpdateParticleTransform\022"
  "\025\n\rcontrol_point\030\001 \001(\005\022\035\n\010position\030\002 \001(\013"
  "2\013.CMsgVector\022$\n\013orientation\030\003 \001(\0132\017.CMs"
  "gQuaternion\022\036\n\026interpolation_interval\030\004 "
  "\001(\002\032N\n\026UpdateParticleFallback\022\025\n\rcontrol"
  "_point\030\001 \001(\005\022\035\n\010position\030\002 \001(\0132\013.CMsgVec"
  "tor\032t\n\024UpdateParticleOffset\022\025\n\rcontrol_p"
  "oint\030\001 \001(\005\022\"\n\rorigin_offset\030\002 \001(\0132\013.CMsg"
  "Vector\022!\n\014angle_offset\030\003 \001(\0132\013.CMsgQAngl"
  "e\032\201\002\n\021UpdateParticleEnt\022\025\n\rcontrol_point"
  "\030\001 \001(\005\022\037\n\rentity_handle\030\002 \001(\r:\01016777215\022"
  "\023\n\013attach_type\030\003 \001(\005\022\022\n\nattachment\030\004 \001(\005"
  "\022&\n\021fallback_position\030\005 \001(\0132\013.CMsgVector"
  "\022\031\n\021include_wearables\030\006 \001(\010\022$\n\017offset_po"
  "sition\030\007 \001(\0132\013.CMsgVector\022\"\n\roffset_angl"
  "es\030\010 \001(\0132\013.CMsgQAngle\032J\n\027UpdateParticleS"
  "etFrozen\022\022\n\nset_frozen\030\001 \001(\010\022\033\n\023transiti"
  "on_duration\030\002 \001(\002\032/\n\030UpdateParticleShoul"
  "dDraw\022\023\n\013should_draw\030\001 \001(\010\032o\n\034ChangeCont"
  "rolPointAttachment\022\026\n\016attachment_old\030\001 \001"
  "(\005\022\026\n\016attachment_new\030\002 \001(\005\022\037\n\rentity_han"
  "dle\030\003 \001(\r:\01016777215\032V\n\024UpdateEntityPosit"
  "ion\022\037\n\rentity_handle\030\001 \001(\r:\01016777215\022\035\n\010"
  "position\030\002 \001(\0132\013.CMsgVector\032e\n\030SetPartic"
  "leFoWProperties\022\031\n\021fow_control_point\030\001 \001"
  "(\005\022\032\n\022fow_control_point2\030\002 \001(\005\022\022\n\nfow_ra"
  "dius\030\003 \001(\002\032.\n\031SetParticleShouldCheckFoW\022"
  "\021\n\tcheck_fow\030\001 \001(\010\032A\n\024SetControlPointMod"
  "el\022\025\n\rcontrol_point\030\001 \001(\005\022\022\n\nmodel_name\030"
  "\002 \001(\t\032G\n\027SetControlPointSnapshot\022\025\n\rcont"
  "rol_point\030\001 \001(\005\022\025\n\rsnapshot_name\030\002 \001(\t\032\037"
  "\n\017SetParticleText\022\014\n\004text\030\001 \001(\t\032C\n\023SetTe"
  "xtureAttribute\022\026\n\016attribute_name\030\001 \001(\t\022\024"
  "\n\014texture_name\030\002 \001(\t\032/\n\031SetSceneObjectGe"
  "nericFlag\022\022\n\nflag_value\030\001 \001(\010\0329\n\032SetScen"
  "eObjectTintAndDesat\022\014\n\004tint\030\001 \001(\007\022\r\n\005des"
  "at\030\002 \001(\002\032*\n\022ParticleSkipToTime\022\024\n\014skip_t"
  "o_time\030\001 \001(\002\032\'\n\021ParticleCanFreeze\022\022\n\ncan"
  "_freeze\030\001 \001(\010\032F\n ParticleFreezeTransitio"
  "nOverride\022\"\n\032freeze_transition_override\030"
  "\001 \001(\002\032k\n\027FreezeParticleInvolving\022\022\n\nset_"
  "frozen\030\001 \001(\010\022\033\n\023transition_duration\030\002 \001("
  "\002\022\037\n\rentity_handle\030\003 \001(\r:\01016777215\032]\n\033Ad"
  "dModellistOverrideElement\022\022\n\nmodel_name\030"
  "\001 \001(\t\022\031\n\021spawn_probability\030\002 \001(\002\022\017\n\007grou"
  "pid\030\003 \001(\r\032)\n\026ClearModellistOverride\022\017\n\007g"
  "roupid\030\001 \001(\r\032\350\005\n\034SetParticleNamedValueCo"
  "ntext\022^\n\014float_values\030\001 \003(\0132H.CUserMsg_P"
  "articleManager.SetParticleNamedValueCont"
  "ext.FloatContextValue\022`\n\rvector_values\030\002"
  " \003(\0132I.CUserMsg_ParticleManager.SetParti"
  "cleNamedValueContext.VectorContextValue\022"
  "f\n\020transform_values\030\003 \003(\0132L.CUserMsg_Par"
  "ticleManager.SetParticleNamedValueContex"
  "t.TransformContextValue\022]\n\016ehandle_value"
  "s\030\004 \003(\0132E.CUserMsg_ParticleManager.SetPa"
  "rticleNamedValueContext.EHandleContext\032;"
  "\n\021FloatContextValue\022\027\n\017value_name_hash\030\001"
  " \001(\r\022\r\n\005value\030\002 \001(\002\032I\n\022VectorContextValu"
  "e\022\027\n\017value_name_hash\030\001 \001(\r\022\032\n\005value\030\002 \001("
  "\0132\013.CMsgVector\032o\n\025TransformContextValue\022"
  "\027\n\017value_name_hash\030\001 \001(\r\022\033\n\006angles\030\002 \001(\013"
  "2\013.CMsgQAngle\022 \n\013translation\030\003 \001(\0132\013.CMs"
  "gVector\032F\n\016EHandleContext\022\027\n\017value_name_"
  "hash\030\001 \001(\r\022\033\n\tent_index\030\002 \001(\r:\01016777215\032"
  "l\n\020CreatePhysicsSim\022\027\n\017prop_group_name\030\001"
  " \001(\t\022#\n\033use_high_quality_simulation\030\002 \001("
  "\010\022\032\n\022max_particle_count\030\003 \001(\r\032\023\n\021Destroy"
  "PhysicsSim\032\036\n\010SetVData\022\022\n\nvdata_name\030\001 \001"
  "(\t\032F\n\023SetMaterialOverride\022\025\n\rmaterial_na"
  "me\030\001 \001(\t\022\030\n\020include_children\030\002 \001(\010\032\343\003\n\006A"
  "ddFan\022\016\n\006active\030\001 \001(\010\022 \n\013bounds_mins\030\002 \001"
  "(\0132\013.CMsgVector\022 \n\013bounds_maxs\030\003 \001(\0132\013.C"
  "MsgVector\022\037\n\nfan_origin\030\004 \001(\0132\013.CMsgVect"
  "or\022&\n\021fan_origin_offset\030\005 \001(\0132\013.CMsgVect"
  "or\022\"\n\rfan_direction\030\006 \001(\0132\013.CMsgVector\022\r"
  "\n\005force\030\007 \001(\002\022\027\n\017fan_force_curve\030\010 \001(\t\022\017"
  "\n\007falloff\030\t \001(\010\022\032\n\022pull_towards_point\030\n "
  "\001(\010\022\026\n\016curve_min_dist\030\013 \001(\002\022\026\n\016curve_max"
  "_dist\030\014 \001(\002\022\020\n\010fan_type\030\r \001(\r\022\031\n\021cone_st"
  "art_radius\030\016 \001(\002\022\027\n\017cone_end_radius\030\017 \001("
  "\002\022\023\n\013cone_length\030\020 \001(\002\022\037\n\rentity_handle\030"
  "\021 \001(\r:\01016777215\022\027\n\017attachment_name\030\022 \001(\t"
  "\032\344\001\n\tUpdateFan\022\016\n\006active\030\001 \001(\010\022\037\n\nfan_or"
  "igin\030\002 \001(\0132\013.CMsgVector\022&\n\021fan_origin_of"
  "fset\030\003 \001(\0132\013.CMsgVector\022\"\n\rfan_direction"
  "\030\004 \001(\0132\013.CMsgVector\022\026\n\016fan_ramp_ratio\030\007 "
  "\001(\002\022 \n\013bounds_mins\030\005 \001(\0132\013.CMsgVector\022 \n"
  "\013bounds_maxs\030\006 \001(\0132\013.CMsgVector\032\013\n\tRemov"
  "eFan\032I\n\030SetParticleClusterGrowth\022\020\n\010dura"
  "tion\030\001 \001(\002\022\033\n\006origin\030\002 \001(\0132\013.CMsgVector*"
  "\005\010d\020\312\001:\005\200\265\030\200 \"%\n\021CUserMsg_HudError\022\020\n\010or"
  "der_id\030\001 \001(\005\"<\n\030CUserMsg_CustomGameEvent"
  "\022\022\n\nevent_name\030\001 \001(\t\022\014\n\004data\030\002 \001(\014\"\177\n\037CU"
  "serMessageHapticsManagerPulse\022\017\n\007hand_id"
  "\030\001 \001(\005\022\030\n\020effect_amplitude\030\002 \001(\002\022\030\n\020effe"
  "ct_frequency\030\003 \001(\002\022\027\n\017effect_duration\030\004 "
  "\001(\002\"h\n CUserMessageHapticsManagerEffect\022"
  "\017\n\007hand_id\030\001 \001(\005\022\035\n\025effect_name_hash_cod"
  "e\030\002 \001(\r\022\024\n\014effect_scale\030\003 \001(\002\"E\n\037CUserMe"
  "ssageAnimStateGraphState\022\024\n\014entity_index"
  "\030\001 \001(\005\022\014\n\004data\030\002 \001(\014\"_\n\034CUserMessageUpda"
  "teCssClasses\022\032\n\022target_world_panel\030\001 \001(\005"
  "\022\023\n\013css_classes\030\002 \001(\t\022\016\n\006is_add\030\003 \001(\010\"1\n"
  "\033CUserMessageServerFrameTime\022\022\n\nframe_ti"
  "me\030\001 \001(\002\"4\n CUserMessageLagCompensationE"
  "rror\022\020\n\010distance\030\001 \001(\002\"G\n\034CUserMessageRe"
  "questDllStatus\022\022\n\ndll_action\030\001 \001(\t\022\023\n\013fu"
  "ll_report\030\002 \001(\010\"j\n\035CUserMessageRequestUt"
  "ilAction\022\r\n\005util1\030\002 \001(\005\022\r\n\005util2\030\003 \001(\005\022\r"
  "\n\005util3\030\004 \001(\005\022\r\n\005util4\030\005 \001(\005\022\r\n\005util5\030\006 "
  "\001(\005\"\370\002\n\035CUserMessage_UtilMsg_Response\022\013\n"
  "\003crc\030\001 \001(\007\022\022\n\nitem_count\030\002 \001(\005\022\014\n\004crc2\030\003"
  " \001(\007\022\023\n\013item_count2\030\004 \001(\005\022\020\n\010crc_part\030\005 "
  "\003(\005\022\021\n\tcrc_part2\030\006 \003(\005\022\030\n\020client_timesta"
  "mp\030\007 \001(\005\022\020\n\010platform\030\010 \001(\005\022>\n\013itemdetail"
  "s\030\t \003(\0132).CUserMessage_UtilMsg_Response."
  "ItemDetail\022\021\n\titemgroup\030\n \001(\005\022\023\n\013total_c"
  "ount\030\013 \001(\005\022\024\n\014total_count2\030\014 \001(\005\032D\n\nItem"
  "Detail\022\r\n\005index\030\001 \001(\005\022\014\n\004hash\030\002 \001(\005\022\013\n\003c"
  "rc\030\003 \001(\005\022\014\n\004name\030\004 \001(\t\"\241\003\n\026CUserMessage_"
  "DllStatus\022\023\n\013file_report\030\001 \001(\t\022\024\n\014comman"
  "d_line\030\002 \001(\t\022\023\n\013total_files\030\003 \001(\r\022\022\n\npro"
  "cess_id\030\004 \001(\r\022\021\n\tosversion\030\005 \001(\005\022\023\n\013clie"
  "nt_time\030\006 \001(\004\0229\n\013diagnostics\030\007 \003(\0132$.CUs"
  "erMessage_DllStatus.CVDiagnostic\0220\n\007modu"
  "les\030\010 \003(\0132\037.CUserMessage_DllStatus.CModu"
  "le\032Q\n\014CVDiagnostic\022\n\n\002id\030\001 \001(\r\022\020\n\010extend"
  "ed\030\002 \001(\r\022\r\n\005value\030\003 \001(\004\022\024\n\014string_value\030"
  "\004 \001(\t\032K\n\007CModule\022\021\n\tbase_addr\030\001 \001(\004\022\014\n\004n"
  "ame\030\002 \001(\t\022\014\n\004size\030\003 \001(\r\022\021\n\ttimestamp\030\004 \001"
  "(\r\"R\n\034CUserMessageRequestInventory\022\021\n\tin"
  "ventory\030\001 \001(\005\022\016\n\006offset\030\002 \001(\005\022\017\n\007options"
  "\030\003 \001(\005\"\367\004\n\037CUserMessage_Inventory_Respon"
  "se\022\013\n\003crc\030\001 \001(\007\022\022\n\nitem_count\030\002 \001(\005\022\021\n\to"
  "sversion\030\005 \001(\005\022\021\n\tperf_time\030\006 \001(\005\022\030\n\020cli"
  "ent_timestamp\030\007 \001(\005\022\020\n\010platform\030\010 \001(\005\022E\n"
  "\013inventories\030\t \003(\01320.CUserMessage_Invent"
  "ory_Response.InventoryDetail\022F\n\014inventor"
  "ies2\030\n \003(\01320.CUserMessage_Inventory_Resp"
  "onse.InventoryDetail\022F\n\014inventories3\030\016 \003"
  "(\01320.CUserMessage_Inventory_Response.Inv"
  "entoryDetail\022\020\n\010inv_type\030\013 \001(\005\022\025\n\rbuild_"
  "version\030\014 \001(\005\022\020\n\010instance\030\r \001(\005\022\022\n\nstart"
  "_time\030\017 \001(\003\032\272\001\n\017InventoryDetail\022\r\n\005index"
  "\030\001 \001(\005\022\017\n\007primary\030\002 \001(\003\022\016\n\006offset\030\003 \001(\003\022"
  "\r\n\005first\030\004 \001(\003\022\014\n\004base\030\005 \001(\003\022\014\n\004name\030\006 \001"
  "(\t\022\021\n\tbase_name\030\007 \001(\t\022\023\n\013base_detail\030\010 \001"
  "(\005\022\021\n\tbase_time\030\t \001(\005\022\021\n\tbase_hash\030\n \001(\005"
  "\"\270\002\n\035CUserMessageRequestDiagnostic\022>\n\013di"
  "agnostics\030\001 \003(\0132).CUserMessageRequestDia"
  "gnostic.Diagnostic\032\326\001\n\nDiagnostic\022\r\n\005ind"
  "ex\030\001 \001(\005\022\016\n\006offset\030\002 \001(\003\022\r\n\005param\030\003 \001(\005\022"
  "\016\n\006length\030\004 \001(\005\022\014\n\004type\030\005 \001(\005\022\014\n\004base\030\006 "
  "\001(\003\022\r\n\005range\030\007 \001(\003\022\016\n\006extent\030\010 \001(\003\022\016\n\006de"
  "tail\030\t \001(\003\022\014\n\004name\030\n \001(\t\022\r\n\005alias\030\013 \001(\t\022"
  "\021\n\tvardetail\030\014 \001(\014\022\017\n\007context\030\r \001(\005\"\300\003\n "
  "CUserMessage_Diagnostic_Response\022A\n\013diag"
  "nostics\030\001 \003(\0132,.CUserMessage_Diagnostic_"
  "Response.Diagnostic\022\025\n\rbuild_version\030\002 \001"
  "(\005\022\020\n\010instance\030\003 \001(\005\022\022\n\nstart_time\030\004 \001(\003"
  "\022\021\n\tosversion\030\005 \001(\005\022\020\n\010platform\030\006 \001(\005\032\366\001"
  "\n\nDiagnostic\022\r\n\005index\030\001 \001(\005\022\016\n\006offset\030\002 "
  "\001(\003\022\r\n\005param\030\003 \001(\005\022\016\n\006length\030\004 \001(\005\022\016\n\006de"
  "tail\030\005 \001(\014\022\014\n\004base\030\006 \001(\003\022\r\n\005range\030\007 \001(\003\022"
  "\014\n\004type\030\010 \001(\005\022\014\n\004name\030\n \001(\t\022\r\n\005alias\030\013 \001"
  "(\t\022\016\n\006backup\030\014 \001(\014\022\017\n\007context\030\r \001(\005\022\017\n\007c"
  "ontrol\030\016 \001(\003\022\017\n\007augment\030\017 \001(\003\022\017\n\007placebo"
  "\030\020 \001(\003\"l\n\032CUserMessage_ExtraUserData\022\014\n\004"
  "item\030\001 \001(\005\022\016\n\006value1\030\002 \001(\003\022\016\n\006value2\030\003 \001"
  "(\003\022\017\n\007detail1\030\004 \003(\014\022\017\n\007detail2\030\005 \003(\014\"\313\003\n"
  " CUserMessage_NotifyResponseFound\022\025\n\tent"
  "_index\030\001 \001(\005:\002-1\022\021\n\trule_name\030\002 \001(\t\022\026\n\016r"
  "esponse_value\030\003 \001(\t\022\030\n\020response_concept\030"
  "\004 \001(\t\022<\n\010criteria\030\005 \003(\0132*.CUserMessage_N"
  "otifyResponseFound.Criteria\022\036\n\022int_crite"
  "ria_names\030\006 \003(\rB\002\020\001\022\037\n\023int_criteria_valu"
  "es\030\007 \003(\005B\002\020\001\022 \n\024float_criteria_names\030\010 \003"
  "(\rB\002\020\001\022\035\n\025float_criteria_values\030\t \003(\002\022!\n"
  "\025symbol_criteria_names\030\n \003(\rB\002\020\001\022\"\n\026symb"
  "ol_criteria_values\030\013 \003(\rB\002\020\001\022\024\n\014speak_re"
  "sult\030\014 \001(\005\032.\n\010Criteria\022\023\n\013name_symbol\030\001 "
  "\001(\r\022\r\n\005value\030\002 \001(\t\"\257\001\n$CUserMessage_Play"
  "ResponseConditional\022\025\n\tent_index\030\001 \001(\005:\002"
  "-1\022\024\n\014player_slots\030\002 \003(\005\022\020\n\010response\030\003 \001"
  "(\t\022\037\n\nent_origin\030\004 \001(\0132\013.CMsgVector\022\021\n\tp"
  "re_delay\030\005 \001(\002\022\024\n\014mix_priority\030\006 \001(\005*\221\t\n"
  "\021EBaseUserMessages\022\027\n\023UM_AchievementEven"
  "t\020e\022\023\n\017UM_CloseCaption\020f\022\031\n\025UM_CloseCapt"
  "ionDirect\020g\022\027\n\023UM_CurrentTimescale\020h\022\027\n\023"
  "UM_DesiredTimescale\020i\022\013\n\007UM_Fade\020j\022\020\n\014UM"
  "_GameTitle\020k\022\r\n\tUM_HudMsg\020n\022\016\n\nUM_HudTex"
  "t\020o\022\022\n\016UM_ColoredText\020q\022\023\n\017UM_RequestSta"
  "te\020r\022\017\n\013UM_ResetHUD\020s\022\r\n\tUM_Rumble\020t\022\016\n\n"
  "UM_SayText\020u\022\017\n\013UM_SayText2\020v\022\025\n\021UM_SayT"
  "extChannel\020w\022\014\n\010UM_Shake\020x\022\017\n\013UM_ShakeDi"
  "r\020y\022\021\n\rUM_WaterShake\020z\022\016\n\nUM_TextMsg\020|\022\021"
  "\n\rUM_ScreenTilt\020}\022\021\n\014UM_VoiceMask\020\200\001\022\021\n\014"
  "UM_SendAudio\020\202\001\022\022\n\rUM_ItemPickup\020\203\001\022\022\n\rU"
  "M_AmmoDenied\020\204\001\022\020\n\013UM_ShowMenu\020\206\001\022\022\n\rUM_"
  "CreditsMsg\020\207\001\022\037\n\032UM_CloseCaptionPlacehol"
  "der\020\216\001\022\030\n\023UM_CameraTransition\020\217\001\022\026\n\021UM_A"
  "udioParameter\020\220\001\022\027\n\022UM_ParticleManager\020\221"
  "\001\022\020\n\013UM_HudError\020\222\001\022\027\n\022UM_CustomGameEven"
  "t\020\224\001\022\027\n\022UM_AnimGraphUpdate\020\225\001\022\033\n\026UM_Hapt"
  "icsManagerPulse\020\226\001\022\034\n\027UM_HapticsManagerE"
  "ffect\020\227\001\022\030\n\023UM_UpdateCssClasses\020\231\001\022\027\n\022UM"
  "_ServerFrameTime\020\232\001\022\034\n\027UM_LagCompensatio"
  "nError\020\233\001\022\030\n\023UM_RequestDllStatus\020\234\001\022\031\n\024U"
  "M_RequestUtilAction\020\235\001\022\032\n\025UM_UtilActionR"
  "esponse\020\236\001\022\031\n\024UM_DllStatusResponse\020\237\001\022\030\n"
  "\023UM_RequestInventory\020\240\001\022\031\n\024UM_InventoryR"
  "esponse\020\241\001\022\031\n\024UM_RequestDiagnostic\020\242\001\022\032\n"
  "\025UM_DiagnosticResponse\020\243\001\022\025\n\020UM_ExtraUse"
  "rData\020\244\001\022\033\n\026UM_NotifyResponseFound\020\245\001\022\037\n"
  "\032UM_PlayResponseConditional\020\246\001\022\020\n\013UM_MAX"
  "_BASE\020\310\001*\224\001\n\023EBaseEntityMessages\022\022\n\rEM_P"
  "layJingle\020\210\001\022\025\n\020EM_ScreenOverlay\020\211\001\022\027\n\022E"
  "M_RemoveAllDecals\020\212\001\022\026\n\021EM_PropagateForc"
  "e\020\213\001\022\017\n\nEM_DoSpark\020\214\001\022\020\n\013EM_FixAngle\020\215\001*"
  "o\n\teRollType\022\026\n\tROLL_NONE\020\377\377\377\377\377\377\377\377\377\001\022\016\n\n"
  "ROLL_STATS\020\000\022\020\n\014ROLL_CREDITS\020\001\022\027\n\023ROLL_L"
  "ATE_JOIN_LOGO\020\002\022\017\n\013ROLL_OUTTRO\020\003*\352\017\n\020PAR"
  "TICLE_MESSAGE\022&\n\"GAME_PARTICLE_MANAGER_E"
  "VENT_CREATE\020\000\022&\n\"GAME_PARTICLE_MANAGER_E"
  "VENT_UPDATE\020\001\022.\n*GAME_PARTICLE_MANAGER_E"
  "VENT_UPDATE_FORWARD\020\002\0222\n.GAME_PARTICLE_M"
  "ANAGER_EVENT_UPDATE_ORIENTATION\020\003\022/\n+GAM"
  "E_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK"
  "\020\004\022*\n&GAME_PARTICLE_MANAGER_EVENT_UPDATE"
  "_ENT\020\005\022-\n)GAME_PARTICLE_MANAGER_EVENT_UP"
  "DATE_OFFSET\020\006\022\'\n#GAME_PARTICLE_MANAGER_E"
  "VENT_DESTROY\020\007\0221\n-GAME_PARTICLE_MANAGER_"
  "EVENT_DESTROY_INVOLVING\020\010\022\'\n#GAME_PARTIC"
  "LE_MANAGER_EVENT_RELEASE\020\t\022\'\n#GAME_PARTI"
  "CLE_MANAGER_EVENT_LATENCY\020\n\022+\n\'GAME_PART"
  "ICLE_MANAGER_EVENT_SHOULD_DRAW\020\013\022&\n\"GAME"
  "_PARTICLE_MANAGER_EVENT_FROZEN\020\014\022\?\n;GAME"
  "_PARTICLE_MANAGER_EVENT_CHANGE_CONTROL_P"
  "OINT_ATTACHMENT\020\r\0226\n2GAME_PARTICLE_MANAG"
  "ER_EVENT_UPDATE_ENTITY_POSITION\020\016\0222\n.GAM"
  "E_PARTICLE_MANAGER_EVENT_SET_FOW_PROPERT"
  "IES\020\017\022(\n$GAME_PARTICLE_MANAGER_EVENT_SET"
  "_TEXT\020\020\0224\n0GAME_PARTICLE_MANAGER_EVENT_S"
  "ET_SHOULD_CHECK_FOW\020\021\0227\n3GAME_PARTICLE_M"
  "ANAGER_EVENT_SET_CONTROL_POINT_MODEL\020\022\022:"
  "\n6GAME_PARTICLE_MANAGER_EVENT_SET_CONTRO"
  "L_POINT_SNAPSHOT\020\023\0225\n1GAME_PARTICLE_MANA"
  "GER_EVENT_SET_TEXTURE_ATTRIBUTE\020\024\022=\n9GAM"
  "E_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJEC"
  "T_GENERIC_FLAG\020\025\022\?\n;GAME_PARTICLE_MANAGE"
  "R_EVENT_SET_SCENE_OBJECT_TINT_AND_DESAT\020"
  "\026\022-\n)GAME_PARTICLE_MANAGER_EVENT_DESTROY"
  "_NAMED\020\027\022,\n(GAME_PARTICLE_MANAGER_EVENT_"
  "SKIP_TO_TIME\020\030\022*\n&GAME_PARTICLE_MANAGER_"
  "EVENT_CAN_FREEZE\020\031\0227\n3GAME_PARTICLE_MANA"
  "GER_EVENT_SET_NAMED_VALUE_CONTEXT\020\032\0220\n,G"
  "AME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSF"
  "ORM\020\033\022:\n6GAME_PARTICLE_MANAGER_EVENT_FRE"
  "EZE_TRANSITION_OVERRIDE\020\034\0220\n,GAME_PARTIC"
  "LE_MANAGER_EVENT_FREEZE_INVOLVING\020\035\022>\n:G"
  "AME_PARTICLE_MANAGER_EVENT_ADD_MODELLIST"
  "_OVERRIDE_ELEMENT\020\036\0228\n4GAME_PARTICLE_MAN"
  "AGER_EVENT_CLEAR_MODELLIST_OVERRIDE\020\037\0222\n"
  ".GAME_PARTICLE_MANAGER_EVENT_CREATE_PHYS"
  "ICS_SIM\020 \0223\n/GAME_PARTICLE_MANAGER_EVENT"
  "_DESTROY_PHYSICS_SIM\020!\022)\n%GAME_PARTICLE_"
  "MANAGER_EVENT_SET_VDATA\020\"\0225\n1GAME_PARTIC"
  "LE_MANAGER_EVENT_SET_MATERIAL_OVERRIDE\020#"
  "\022\'\n#GAME_PARTICLE_MANAGER_EVENT_ADD_FAN\020"
  "$\022*\n&GAME_PARTICLE_MANAGER_EVENT_UPDATE_"
  "FAN\020%\0222\n.GAME_PARTICLE_MANAGER_EVENT_SET"
  "_CLUSTER_GROWTH\020&\022*\n&GAME_PARTICLE_MANAG"
  "ER_EVENT_REMOVE_FAN\020\'*t\n\020EHapticPulseTyp"
  "e\022\036\n\032VR_HAND_HAPTIC_PULSE_LIGHT\020\000\022\037\n\033VR_"
  "HAND_HAPTIC_PULSE_MEDIUM\020\001\022\037\n\033VR_HAND_HA"
  "PTIC_PULSE_STRONG\020\002"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_usermessages_2eproto_deps[1] = {
  &::descriptor_table_networkbasetypes_2eproto,
};
static ::_pbi::once_flag descriptor_table_usermessages_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_usermessages_2eproto = {
    false, false, 18579, descriptor_table_protodef_usermessages_2eproto,
    "usermessages.proto",
    &descriptor_table_usermessages_2eproto_once, descriptor_table_usermessages_2eproto_deps, 1, 107,
    schemas, file_default_instances, TableStruct_usermessages_2eproto::offsets,
    file_level_metadata_usermessages_2eproto, file_level_enum_descriptors_usermessages_2eproto,
    file_level_service_descriptors_usermessages_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_usermessages_2eproto_getter() {
  return &descriptor_table_usermessages_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_usermessages_2eproto(&descriptor_table_usermessages_2eproto);
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EBaseUserMessages_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_usermessages_2eproto);
  return file_level_enum_descriptors_usermessages_2eproto[0];
}
bool EBaseUserMessages_IsValid(int value) {
  switch (value) {
    case 101:
    case 102:
    case 103:
    case 104:
    case 105:
    case 106:
    case 107:
    case 110:
    case 111:
    case 113:
    case 114:
    case 115:
    case 116:
    case 117:
    case 118:
    case 119:
    case 120:
    case 121:
    case 122:
    case 124:
    case 125:
    case 128:
    case 130:
    case 131:
    case 132:
    case 134:
    case 135:
    case 142:
    case 143:
    case 144:
    case 145:
    case 146:
    case 148:
    case 149:
    case 150:
    case 151:
    case 153:
    case 154:
    case 155:
    case 156:
    case 157:
    case 158:
    case 159:
    case 160:
    case 161:
    case 162:
    case 163:
    case 164:
    case 165:
    case 166:
    case 200:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EBaseEntityMessages_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_usermessages_2eproto);
  return file_level_enum_descriptors_usermessages_2eproto[1];
}
bool EBaseEntityMessages_IsValid(int value) {
  switch (value) {
    case 136:
    case 137:
    case 138:
    case 139:
    case 140:
    case 141:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* eRollType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_usermessages_2eproto);
  return file_level_enum_descriptors_usermessages_2eproto[2];
}
bool eRollType_IsValid(int value) {
  switch (value) {
    case -1:
    case 0:
    case 1:
    case 2:
    case 3:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PARTICLE_MESSAGE_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_usermessages_2eproto);
  return file_level_enum_descriptors_usermessages_2eproto[3];
}
bool PARTICLE_MESSAGE_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
    case 7:
    case 8:
    case 9:
    case 10:
    case 11:
    case 12:
    case 13:
    case 14:
    case 15:
    case 16:
    case 17:
    case 18:
    case 19:
    case 20:
    case 21:
    case 22:
    case 23:
    case 24:
    case 25:
    case 26:
    case 27:
    case 28:
    case 29:
    case 30:
    case 31:
    case 32:
    case 33:
    case 34:
    case 35:
    case 36:
    case 37:
    case 38:
    case 39:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EHapticPulseType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_usermessages_2eproto);
  return file_level_enum_descriptors_usermessages_2eproto[4];
}
bool EHapticPulseType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}


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

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

CUserMessageAchievementEvent::CUserMessageAchievementEvent(::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:CUserMessageAchievementEvent)
}
CUserMessageAchievementEvent::CUserMessageAchievementEvent(const CUserMessageAchievementEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageAchievementEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.achievement_){}};

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

inline void CUserMessageAchievementEvent::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_.achievement_){0u}
  };
}

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

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

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

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

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

const char* CUserMessageAchievementEvent::_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 uint32 achievement = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_achievement(&has_bits);
          _impl_.achievement_ = ::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* CUserMessageAchievementEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageAchievementEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 achievement = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_achievement(), 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:CUserMessageAchievementEvent)
  return target;
}

size_t CUserMessageAchievementEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageAchievementEvent)
  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 uint32 achievement = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_achievement());
  }

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

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


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

  if (from._internal_has_achievement()) {
    _this->_internal_set_achievement(from._internal_achievement());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageAchievementEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[0]);
}

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

class CUserMessageCloseCaption::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageCloseCaption>()._impl_._has_bits_);
  static void set_has_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_from_player(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_ent_index(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageCloseCaption::CUserMessageCloseCaption(::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:CUserMessageCloseCaption)
}
CUserMessageCloseCaption::CUserMessageCloseCaption(const CUserMessageCloseCaption& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCloseCaption* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.hash_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.from_player_){}
    , decltype(_impl_.ent_index_){}};

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

inline void CUserMessageCloseCaption::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_.hash_){0u}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.from_player_){false}
    , decltype(_impl_.ent_index_){-1}
  };
}

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

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

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

void CUserMessageCloseCaption::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCloseCaption)
  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) {
    ::memset(&_impl_.hash_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.from_player_) -
        reinterpret_cast<char*>(&_impl_.hash_)) + sizeof(_impl_.from_player_));
    _impl_.ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCloseCaption::_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 hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_hash(&has_bits);
          _impl_.hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional bool from_player = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_from_player(&has_bits);
          _impl_.from_player_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 ent_index = 4 [default = -1];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::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* CUserMessageCloseCaption::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCloseCaption)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional float duration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_duration(), target);
  }

  // optional bool from_player = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_from_player(), target);
  }

  // optional int32 ent_index = 4 [default = -1];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_ent_index(), 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:CUserMessageCloseCaption)
  return target;
}

size_t CUserMessageCloseCaption::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCloseCaption)
  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 & 0x0000000fu) {
    // optional fixed32 hash = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float duration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional bool from_player = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional int32 ent_index = 4 [default = -1];
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_ent_index());
    }

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

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


void CUserMessageCloseCaption::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCloseCaption*>(&to_msg);
  auto& from = static_cast<const CUserMessageCloseCaption&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCloseCaption)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.hash_ = from._impl_.hash_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.from_player_ = from._impl_.from_player_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageCloseCaption::InternalSwap(CUserMessageCloseCaption* 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(CUserMessageCloseCaption, _impl_.from_player_)
      + sizeof(CUserMessageCloseCaption::_impl_.from_player_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageCloseCaption, _impl_.hash_)>(
          reinterpret_cast<char*>(&_impl_.hash_),
          reinterpret_cast<char*>(&other->_impl_.hash_));
  swap(_impl_.ent_index_, other->_impl_.ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCloseCaption::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[1]);
}

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

class CUserMessageCloseCaptionDirect::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageCloseCaptionDirect>()._impl_._has_bits_);
  static void set_has_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_from_player(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_ent_index(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageCloseCaptionDirect::CUserMessageCloseCaptionDirect(::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:CUserMessageCloseCaptionDirect)
}
CUserMessageCloseCaptionDirect::CUserMessageCloseCaptionDirect(const CUserMessageCloseCaptionDirect& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCloseCaptionDirect* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.hash_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.from_player_){}
    , decltype(_impl_.ent_index_){}};

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

inline void CUserMessageCloseCaptionDirect::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_.hash_){0u}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.from_player_){false}
    , decltype(_impl_.ent_index_){-1}
  };
}

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

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

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

void CUserMessageCloseCaptionDirect::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCloseCaptionDirect)
  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) {
    ::memset(&_impl_.hash_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.from_player_) -
        reinterpret_cast<char*>(&_impl_.hash_)) + sizeof(_impl_.from_player_));
    _impl_.ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCloseCaptionDirect::_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 hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_hash(&has_bits);
          _impl_.hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional bool from_player = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_from_player(&has_bits);
          _impl_.from_player_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 ent_index = 4 [default = -1];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::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* CUserMessageCloseCaptionDirect::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCloseCaptionDirect)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional float duration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_duration(), target);
  }

  // optional bool from_player = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_from_player(), target);
  }

  // optional int32 ent_index = 4 [default = -1];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_ent_index(), 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:CUserMessageCloseCaptionDirect)
  return target;
}

size_t CUserMessageCloseCaptionDirect::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCloseCaptionDirect)
  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 & 0x0000000fu) {
    // optional fixed32 hash = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float duration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional bool from_player = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional int32 ent_index = 4 [default = -1];
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_ent_index());
    }

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

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


void CUserMessageCloseCaptionDirect::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCloseCaptionDirect*>(&to_msg);
  auto& from = static_cast<const CUserMessageCloseCaptionDirect&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCloseCaptionDirect)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.hash_ = from._impl_.hash_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.from_player_ = from._impl_.from_player_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageCloseCaptionDirect::InternalSwap(CUserMessageCloseCaptionDirect* 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(CUserMessageCloseCaptionDirect, _impl_.from_player_)
      + sizeof(CUserMessageCloseCaptionDirect::_impl_.from_player_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageCloseCaptionDirect, _impl_.hash_)>(
          reinterpret_cast<char*>(&_impl_.hash_),
          reinterpret_cast<char*>(&other->_impl_.hash_));
  swap(_impl_.ent_index_, other->_impl_.ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCloseCaptionDirect::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[2]);
}

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

class CUserMessageCloseCaptionPlaceholder::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageCloseCaptionPlaceholder>()._impl_._has_bits_);
  static void set_has_string(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_from_player(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_ent_index(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageCloseCaptionPlaceholder::CUserMessageCloseCaptionPlaceholder(::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:CUserMessageCloseCaptionPlaceholder)
}
CUserMessageCloseCaptionPlaceholder::CUserMessageCloseCaptionPlaceholder(const CUserMessageCloseCaptionPlaceholder& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCloseCaptionPlaceholder* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.string_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.from_player_){}
    , decltype(_impl_.ent_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.string_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.string_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_string()) {
    _this->_impl_.string_.Set(from._internal_string(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.duration_, &from._impl_.duration_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.ent_index_) -
    reinterpret_cast<char*>(&_impl_.duration_)) + sizeof(_impl_.ent_index_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageCloseCaptionPlaceholder)
}

inline void CUserMessageCloseCaptionPlaceholder::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_.string_){}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.from_player_){false}
    , decltype(_impl_.ent_index_){-1}
  };
  _impl_.string_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.string_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageCloseCaptionPlaceholder::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.string_.Destroy();
}

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

void CUserMessageCloseCaptionPlaceholder::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCloseCaptionPlaceholder)
  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) {
    _impl_.string_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.duration_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.from_player_) -
        reinterpret_cast<char*>(&_impl_.duration_)) + sizeof(_impl_.from_player_));
    _impl_.ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCloseCaptionPlaceholder::_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 string string = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_string();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageCloseCaptionPlaceholder.string");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional bool from_player = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_from_player(&has_bits);
          _impl_.from_player_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 ent_index = 4 [default = -1];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::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* CUserMessageCloseCaptionPlaceholder::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCloseCaptionPlaceholder)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string string = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_string().data(), static_cast<int>(this->_internal_string().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageCloseCaptionPlaceholder.string");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_string(), target);
  }

  // optional float duration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_duration(), target);
  }

  // optional bool from_player = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_from_player(), target);
  }

  // optional int32 ent_index = 4 [default = -1];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_ent_index(), 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:CUserMessageCloseCaptionPlaceholder)
  return target;
}

size_t CUserMessageCloseCaptionPlaceholder::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCloseCaptionPlaceholder)
  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 & 0x0000000fu) {
    // optional string string = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_string());
    }

    // optional float duration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional bool from_player = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional int32 ent_index = 4 [default = -1];
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_ent_index());
    }

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

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


void CUserMessageCloseCaptionPlaceholder::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCloseCaptionPlaceholder*>(&to_msg);
  auto& from = static_cast<const CUserMessageCloseCaptionPlaceholder&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCloseCaptionPlaceholder)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_string(from._internal_string());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.from_player_ = from._impl_.from_player_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageCloseCaptionPlaceholder::InternalSwap(CUserMessageCloseCaptionPlaceholder* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.string_, lhs_arena,
      &other->_impl_.string_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageCloseCaptionPlaceholder, _impl_.from_player_)
      + sizeof(CUserMessageCloseCaptionPlaceholder::_impl_.from_player_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageCloseCaptionPlaceholder, _impl_.duration_)>(
          reinterpret_cast<char*>(&_impl_.duration_),
          reinterpret_cast<char*>(&other->_impl_.duration_));
  swap(_impl_.ent_index_, other->_impl_.ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCloseCaptionPlaceholder::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[3]);
}

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

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

CUserMessageCurrentTimescale::CUserMessageCurrentTimescale(::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:CUserMessageCurrentTimescale)
}
CUserMessageCurrentTimescale::CUserMessageCurrentTimescale(const CUserMessageCurrentTimescale& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCurrentTimescale* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.current_){}};

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

inline void CUserMessageCurrentTimescale::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_.current_){0}
  };
}

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

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

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

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

  _impl_.current_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCurrentTimescale::_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 float current = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_current(&has_bits);
          _impl_.current_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageCurrentTimescale::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCurrentTimescale)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float current = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_current(), 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:CUserMessageCurrentTimescale)
  return target;
}

size_t CUserMessageCurrentTimescale::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCurrentTimescale)
  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 float current = 1;
  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 CUserMessageCurrentTimescale::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageCurrentTimescale::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageCurrentTimescale::GetClassData() const { return &_class_data_; }


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

  if (from._internal_has_current()) {
    _this->_internal_set_current(from._internal_current());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCurrentTimescale::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[4]);
}

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

class CUserMessageDesiredTimescale::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageDesiredTimescale>()._impl_._has_bits_);
  static void set_has_desired(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_acceleration(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_minblendrate(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_blenddeltamultiplier(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageDesiredTimescale::CUserMessageDesiredTimescale(::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:CUserMessageDesiredTimescale)
}
CUserMessageDesiredTimescale::CUserMessageDesiredTimescale(const CUserMessageDesiredTimescale& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageDesiredTimescale* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.desired_){}
    , decltype(_impl_.acceleration_){}
    , decltype(_impl_.minblendrate_){}
    , decltype(_impl_.blenddeltamultiplier_){}};

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

inline void CUserMessageDesiredTimescale::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_.desired_){0}
    , decltype(_impl_.acceleration_){0}
    , decltype(_impl_.minblendrate_){0}
    , decltype(_impl_.blenddeltamultiplier_){0}
  };
}

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

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

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

void CUserMessageDesiredTimescale::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageDesiredTimescale)
  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) {
    ::memset(&_impl_.desired_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.blenddeltamultiplier_) -
        reinterpret_cast<char*>(&_impl_.desired_)) + sizeof(_impl_.blenddeltamultiplier_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageDesiredTimescale::_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 float desired = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_desired(&has_bits);
          _impl_.desired_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float acceleration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_acceleration(&has_bits);
          _impl_.acceleration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float minblendrate = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_minblendrate(&has_bits);
          _impl_.minblendrate_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float blenddeltamultiplier = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_blenddeltamultiplier(&has_bits);
          _impl_.blenddeltamultiplier_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageDesiredTimescale::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageDesiredTimescale)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float desired = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_desired(), target);
  }

  // optional float acceleration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_acceleration(), target);
  }

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

  // optional float blenddeltamultiplier = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_blenddeltamultiplier(), 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:CUserMessageDesiredTimescale)
  return target;
}

size_t CUserMessageDesiredTimescale::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageDesiredTimescale)
  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 & 0x0000000fu) {
    // optional float desired = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float acceleration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

    // optional float blenddeltamultiplier = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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


void CUserMessageDesiredTimescale::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageDesiredTimescale*>(&to_msg);
  auto& from = static_cast<const CUserMessageDesiredTimescale&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageDesiredTimescale)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.desired_ = from._impl_.desired_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.acceleration_ = from._impl_.acceleration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.minblendrate_ = from._impl_.minblendrate_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.blenddeltamultiplier_ = from._impl_.blenddeltamultiplier_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageDesiredTimescale::InternalSwap(CUserMessageDesiredTimescale* 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(CUserMessageDesiredTimescale, _impl_.blenddeltamultiplier_)
      + sizeof(CUserMessageDesiredTimescale::_impl_.blenddeltamultiplier_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageDesiredTimescale, _impl_.desired_)>(
          reinterpret_cast<char*>(&_impl_.desired_),
          reinterpret_cast<char*>(&other->_impl_.desired_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageDesiredTimescale::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[5]);
}

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

class CUserMessageFade::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageFade>()._impl_._has_bits_);
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_hold_time(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_flags(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_color(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageFade::CUserMessageFade(::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:CUserMessageFade)
}
CUserMessageFade::CUserMessageFade(const CUserMessageFade& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageFade* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.hold_time_){}
    , decltype(_impl_.flags_){}
    , decltype(_impl_.color_){}};

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

inline void CUserMessageFade::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_.duration_){0u}
    , decltype(_impl_.hold_time_){0u}
    , decltype(_impl_.flags_){0u}
    , decltype(_impl_.color_){0u}
  };
}

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

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

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

void CUserMessageFade::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageFade)
  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) {
    ::memset(&_impl_.duration_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.color_) -
        reinterpret_cast<char*>(&_impl_.duration_)) + sizeof(_impl_.color_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageFade::_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 uint32 duration = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 hold_time = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_hold_time(&has_bits);
          _impl_.hold_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 flags = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_flags(&has_bits);
          _impl_.flags_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 color = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_color(&has_bits);
          _impl_.color_ = ::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* CUserMessageFade::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageFade)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 duration = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_duration(), target);
  }

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

  // optional uint32 flags = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_flags(), target);
  }

  // optional fixed32 color = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(4, this->_internal_color(), 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:CUserMessageFade)
  return target;
}

size_t CUserMessageFade::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageFade)
  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 & 0x0000000fu) {
    // optional uint32 duration = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_duration());
    }

    // optional uint32 hold_time = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_hold_time());
    }

    // optional uint32 flags = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_flags());
    }

    // optional fixed32 color = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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


void CUserMessageFade::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageFade*>(&to_msg);
  auto& from = static_cast<const CUserMessageFade&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageFade)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.hold_time_ = from._impl_.hold_time_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.flags_ = from._impl_.flags_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.color_ = from._impl_.color_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageFade::InternalSwap(CUserMessageFade* 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(CUserMessageFade, _impl_.color_)
      + sizeof(CUserMessageFade::_impl_.color_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageFade, _impl_.duration_)>(
          reinterpret_cast<char*>(&_impl_.duration_),
          reinterpret_cast<char*>(&other->_impl_.duration_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageFade::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[6]);
}

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

class CUserMessageShake::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageShake>()._impl_._has_bits_);
  static void set_has_command(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_amplitude(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_frequency(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageShake::CUserMessageShake(::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:CUserMessageShake)
}
CUserMessageShake::CUserMessageShake(const CUserMessageShake& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageShake* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.command_){}
    , decltype(_impl_.amplitude_){}
    , decltype(_impl_.frequency_){}
    , decltype(_impl_.duration_){}};

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

inline void CUserMessageShake::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_.command_){0u}
    , decltype(_impl_.amplitude_){0}
    , decltype(_impl_.frequency_){0}
    , decltype(_impl_.duration_){0}
  };
}

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

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

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

void CUserMessageShake::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageShake)
  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) {
    ::memset(&_impl_.command_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.duration_) -
        reinterpret_cast<char*>(&_impl_.command_)) + sizeof(_impl_.duration_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageShake::_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 uint32 command = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_command(&has_bits);
          _impl_.command_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float amplitude = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_amplitude(&has_bits);
          _impl_.amplitude_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float frequency = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_frequency(&has_bits);
          _impl_.frequency_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageShake::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageShake)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 command = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_command(), target);
  }

  // optional float amplitude = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_amplitude(), target);
  }

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

  // optional float duration = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_duration(), 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:CUserMessageShake)
  return target;
}

size_t CUserMessageShake::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageShake)
  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 & 0x0000000fu) {
    // optional uint32 command = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_command());
    }

    // optional float amplitude = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

    // optional float duration = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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


void CUserMessageShake::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageShake*>(&to_msg);
  auto& from = static_cast<const CUserMessageShake&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageShake)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.command_ = from._impl_.command_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.amplitude_ = from._impl_.amplitude_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.frequency_ = from._impl_.frequency_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageShake::InternalSwap(CUserMessageShake* 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(CUserMessageShake, _impl_.duration_)
      + sizeof(CUserMessageShake::_impl_.duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageShake, _impl_.command_)>(
          reinterpret_cast<char*>(&_impl_.command_),
          reinterpret_cast<char*>(&other->_impl_.command_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageShake::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[7]);
}

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

class CUserMessageShakeDir::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageShakeDir>()._impl_._has_bits_);
  static const ::CUserMessageShake& shake(const CUserMessageShakeDir* msg);
  static void set_has_shake(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgVector& direction(const CUserMessageShakeDir* msg);
  static void set_has_direction(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CUserMessageShake&
CUserMessageShakeDir::_Internal::shake(const CUserMessageShakeDir* msg) {
  return *msg->_impl_.shake_;
}
const ::CMsgVector&
CUserMessageShakeDir::_Internal::direction(const CUserMessageShakeDir* msg) {
  return *msg->_impl_.direction_;
}
void CUserMessageShakeDir::clear_direction() {
  if (_impl_.direction_ != nullptr) _impl_.direction_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMessageShakeDir::CUserMessageShakeDir(::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:CUserMessageShakeDir)
}
CUserMessageShakeDir::CUserMessageShakeDir(const CUserMessageShakeDir& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageShakeDir* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.shake_){nullptr}
    , decltype(_impl_.direction_){nullptr}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_shake()) {
    _this->_impl_.shake_ = new ::CUserMessageShake(*from._impl_.shake_);
  }
  if (from._internal_has_direction()) {
    _this->_impl_.direction_ = new ::CMsgVector(*from._impl_.direction_);
  }
  // @@protoc_insertion_point(copy_constructor:CUserMessageShakeDir)
}

inline void CUserMessageShakeDir::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_.shake_){nullptr}
    , decltype(_impl_.direction_){nullptr}
  };
}

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

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

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

void CUserMessageShakeDir::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageShakeDir)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.shake_ != nullptr);
      _impl_.shake_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.direction_ != nullptr);
      _impl_.direction_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageShakeDir::_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 .CUserMessageShake shake = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_shake(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector direction = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_direction(), 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* CUserMessageShakeDir::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageShakeDir)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  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:CUserMessageShakeDir)
  return target;
}

size_t CUserMessageShakeDir::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageShakeDir)
  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 & 0x00000003u) {
    // optional .CUserMessageShake shake = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.shake_);
    }

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

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

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


void CUserMessageShakeDir::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageShakeDir*>(&to_msg);
  auto& from = static_cast<const CUserMessageShakeDir&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageShakeDir)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_shake()->::CUserMessageShake::MergeFrom(
          from._internal_shake());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_direction()->::CMsgVector::MergeFrom(
          from._internal_direction());
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageShakeDir::InternalSwap(CUserMessageShakeDir* 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(CUserMessageShakeDir, _impl_.direction_)
      + sizeof(CUserMessageShakeDir::_impl_.direction_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageShakeDir, _impl_.shake_)>(
          reinterpret_cast<char*>(&_impl_.shake_),
          reinterpret_cast<char*>(&other->_impl_.shake_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageShakeDir::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[8]);
}

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

class CUserMessageWaterShake::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageWaterShake>()._impl_._has_bits_);
  static void set_has_command(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_amplitude(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_frequency(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageWaterShake::CUserMessageWaterShake(::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:CUserMessageWaterShake)
}
CUserMessageWaterShake::CUserMessageWaterShake(const CUserMessageWaterShake& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageWaterShake* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.command_){}
    , decltype(_impl_.amplitude_){}
    , decltype(_impl_.frequency_){}
    , decltype(_impl_.duration_){}};

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

inline void CUserMessageWaterShake::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_.command_){0u}
    , decltype(_impl_.amplitude_){0}
    , decltype(_impl_.frequency_){0}
    , decltype(_impl_.duration_){0}
  };
}

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

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

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

void CUserMessageWaterShake::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageWaterShake)
  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) {
    ::memset(&_impl_.command_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.duration_) -
        reinterpret_cast<char*>(&_impl_.command_)) + sizeof(_impl_.duration_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageWaterShake::_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 uint32 command = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_command(&has_bits);
          _impl_.command_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float amplitude = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_amplitude(&has_bits);
          _impl_.amplitude_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float frequency = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_frequency(&has_bits);
          _impl_.frequency_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageWaterShake::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageWaterShake)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 command = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_command(), target);
  }

  // optional float amplitude = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_amplitude(), target);
  }

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

  // optional float duration = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_duration(), 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:CUserMessageWaterShake)
  return target;
}

size_t CUserMessageWaterShake::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageWaterShake)
  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 & 0x0000000fu) {
    // optional uint32 command = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_command());
    }

    // optional float amplitude = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

    // optional float duration = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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


void CUserMessageWaterShake::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageWaterShake*>(&to_msg);
  auto& from = static_cast<const CUserMessageWaterShake&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageWaterShake)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.command_ = from._impl_.command_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.amplitude_ = from._impl_.amplitude_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.frequency_ = from._impl_.frequency_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageWaterShake::InternalSwap(CUserMessageWaterShake* 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(CUserMessageWaterShake, _impl_.duration_)
      + sizeof(CUserMessageWaterShake::_impl_.duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageWaterShake, _impl_.command_)>(
          reinterpret_cast<char*>(&_impl_.command_),
          reinterpret_cast<char*>(&other->_impl_.command_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageWaterShake::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[9]);
}

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

class CUserMessageScreenTilt::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageScreenTilt>()._impl_._has_bits_);
  static void set_has_command(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_ease_in_out(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgVector& angle(const CUserMessageScreenTilt* msg);
  static void set_has_angle(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_time(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

const ::CMsgVector&
CUserMessageScreenTilt::_Internal::angle(const CUserMessageScreenTilt* msg) {
  return *msg->_impl_.angle_;
}
void CUserMessageScreenTilt::clear_angle() {
  if (_impl_.angle_ != nullptr) _impl_.angle_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMessageScreenTilt::CUserMessageScreenTilt(::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:CUserMessageScreenTilt)
}
CUserMessageScreenTilt::CUserMessageScreenTilt(const CUserMessageScreenTilt& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageScreenTilt* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.angle_){nullptr}
    , decltype(_impl_.command_){}
    , decltype(_impl_.ease_in_out_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.time_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_angle()) {
    _this->_impl_.angle_ = new ::CMsgVector(*from._impl_.angle_);
  }
  ::memcpy(&_impl_.command_, &from._impl_.command_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.time_) -
    reinterpret_cast<char*>(&_impl_.command_)) + sizeof(_impl_.time_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageScreenTilt)
}

inline void CUserMessageScreenTilt::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_.angle_){nullptr}
    , decltype(_impl_.command_){0u}
    , decltype(_impl_.ease_in_out_){false}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.time_){0}
  };
}

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

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

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

void CUserMessageScreenTilt::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageScreenTilt)
  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_.angle_ != nullptr);
    _impl_.angle_->Clear();
  }
  if (cached_has_bits & 0x0000001eu) {
    ::memset(&_impl_.command_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.time_) -
        reinterpret_cast<char*>(&_impl_.command_)) + sizeof(_impl_.time_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageScreenTilt::_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 uint32 command = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_command(&has_bits);
          _impl_.command_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool ease_in_out = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_ease_in_out(&has_bits);
          _impl_.ease_in_out_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector angle = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_angle(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float time = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_time(&has_bits);
          _impl_.time_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageScreenTilt::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageScreenTilt)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 command = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_command(), target);
  }

  // optional bool ease_in_out = 2;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_ease_in_out(), target);
  }

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

  // optional float duration = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_duration(), target);
  }

  // optional float time = 5;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_time(), 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:CUserMessageScreenTilt)
  return target;
}

size_t CUserMessageScreenTilt::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageScreenTilt)
  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 & 0x0000001fu) {
    // optional .CMsgVector angle = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.angle_);
    }

    // optional uint32 command = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_command());
    }

    // optional bool ease_in_out = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional float duration = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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

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


void CUserMessageScreenTilt::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageScreenTilt*>(&to_msg);
  auto& from = static_cast<const CUserMessageScreenTilt&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageScreenTilt)
  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 & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_angle()->::CMsgVector::MergeFrom(
          from._internal_angle());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.command_ = from._impl_.command_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.ease_in_out_ = from._impl_.ease_in_out_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.time_ = from._impl_.time_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageScreenTilt::InternalSwap(CUserMessageScreenTilt* 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(CUserMessageScreenTilt, _impl_.time_)
      + sizeof(CUserMessageScreenTilt::_impl_.time_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageScreenTilt, _impl_.angle_)>(
          reinterpret_cast<char*>(&_impl_.angle_),
          reinterpret_cast<char*>(&other->_impl_.angle_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageScreenTilt::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[10]);
}

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

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

CUserMessageSayText::CUserMessageSayText(::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:CUserMessageSayText)
}
CUserMessageSayText::CUserMessageSayText(const CUserMessageSayText& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageSayText* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.text_){}
    , decltype(_impl_.chat_){}
    , decltype(_impl_.playerindex_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_text()) {
    _this->_impl_.text_.Set(from._internal_text(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.chat_, &from._impl_.chat_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.playerindex_) -
    reinterpret_cast<char*>(&_impl_.chat_)) + sizeof(_impl_.playerindex_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageSayText)
}

inline void CUserMessageSayText::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_.text_){}
    , decltype(_impl_.chat_){false}
    , decltype(_impl_.playerindex_){-1}
  };
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageSayText::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.text_.Destroy();
}

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

void CUserMessageSayText::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageSayText)
  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) {
    _impl_.text_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    _impl_.chat_ = false;
    _impl_.playerindex_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageSayText::_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 playerindex = 1 [default = -1];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_playerindex(&has_bits);
          _impl_.playerindex_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string text = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_text();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText.text");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool chat = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_chat(&has_bits);
          _impl_.chat_ = ::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* CUserMessageSayText::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageSayText)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional string text = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_text().data(), static_cast<int>(this->_internal_text().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText.text");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_text(), target);
  }

  // optional bool chat = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_chat(), 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:CUserMessageSayText)
  return target;
}

size_t CUserMessageSayText::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageSayText)
  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 string text = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_text());
    }

    // optional bool chat = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

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

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

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


void CUserMessageSayText::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageSayText*>(&to_msg);
  auto& from = static_cast<const CUserMessageSayText&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageSayText)
  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->_internal_set_text(from._internal_text());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.chat_ = from._impl_.chat_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.playerindex_ = from._impl_.playerindex_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageSayText::InternalSwap(CUserMessageSayText* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.text_, lhs_arena,
      &other->_impl_.text_, rhs_arena
  );
  swap(_impl_.chat_, other->_impl_.chat_);
  swap(_impl_.playerindex_, other->_impl_.playerindex_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageSayText::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[11]);
}

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

class CUserMessageSayText2::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageSayText2>()._impl_._has_bits_);
  static void set_has_entityindex(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_chat(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_messagename(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_param1(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_param2(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_param3(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_param4(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

CUserMessageSayText2::CUserMessageSayText2(::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:CUserMessageSayText2)
}
CUserMessageSayText2::CUserMessageSayText2(const CUserMessageSayText2& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageSayText2* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.messagename_){}
    , decltype(_impl_.param1_){}
    , decltype(_impl_.param2_){}
    , decltype(_impl_.param3_){}
    , decltype(_impl_.param4_){}
    , decltype(_impl_.chat_){}
    , decltype(_impl_.entityindex_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.messagename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.messagename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_messagename()) {
    _this->_impl_.messagename_.Set(from._internal_messagename(), 
      _this->GetArenaForAllocation());
  }
  _impl_.param1_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param1_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_param1()) {
    _this->_impl_.param1_.Set(from._internal_param1(), 
      _this->GetArenaForAllocation());
  }
  _impl_.param2_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param2_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_param2()) {
    _this->_impl_.param2_.Set(from._internal_param2(), 
      _this->GetArenaForAllocation());
  }
  _impl_.param3_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param3_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_param3()) {
    _this->_impl_.param3_.Set(from._internal_param3(), 
      _this->GetArenaForAllocation());
  }
  _impl_.param4_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param4_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_param4()) {
    _this->_impl_.param4_.Set(from._internal_param4(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.chat_, &from._impl_.chat_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.entityindex_) -
    reinterpret_cast<char*>(&_impl_.chat_)) + sizeof(_impl_.entityindex_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageSayText2)
}

inline void CUserMessageSayText2::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_.messagename_){}
    , decltype(_impl_.param1_){}
    , decltype(_impl_.param2_){}
    , decltype(_impl_.param3_){}
    , decltype(_impl_.param4_){}
    , decltype(_impl_.chat_){false}
    , decltype(_impl_.entityindex_){-1}
  };
  _impl_.messagename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.messagename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.param1_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param1_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.param2_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param2_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.param3_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param3_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.param4_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.param4_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageSayText2::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.messagename_.Destroy();
  _impl_.param1_.Destroy();
  _impl_.param2_.Destroy();
  _impl_.param3_.Destroy();
  _impl_.param4_.Destroy();
}

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

void CUserMessageSayText2::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageSayText2)
  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 & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.messagename_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.param1_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.param2_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.param3_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000010u) {
      _impl_.param4_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00000060u) {
    _impl_.chat_ = false;
    _impl_.entityindex_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageSayText2::_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 entityindex = 1 [default = -1];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_entityindex(&has_bits);
          _impl_.entityindex_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool chat = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_chat(&has_bits);
          _impl_.chat_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string messagename = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_messagename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText2.messagename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string param1 = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_param1();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText2.param1");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string param2 = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_param2();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText2.param2");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string param3 = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_param3();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText2.param3");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string param4 = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          auto str = _internal_mutable_param4();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayText2.param4");
          #endif  // !NDEBUG
        } 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* CUserMessageSayText2::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageSayText2)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional bool chat = 2;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_chat(), target);
  }

  // optional string messagename = 3;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_messagename().data(), static_cast<int>(this->_internal_messagename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText2.messagename");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_messagename(), target);
  }

  // optional string param1 = 4;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_param1().data(), static_cast<int>(this->_internal_param1().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText2.param1");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_param1(), target);
  }

  // optional string param2 = 5;
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_param2().data(), static_cast<int>(this->_internal_param2().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText2.param2");
    target = stream->WriteStringMaybeAliased(
        5, this->_internal_param2(), target);
  }

  // optional string param3 = 6;
  if (cached_has_bits & 0x00000008u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_param3().data(), static_cast<int>(this->_internal_param3().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText2.param3");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_param3(), target);
  }

  // optional string param4 = 7;
  if (cached_has_bits & 0x00000010u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_param4().data(), static_cast<int>(this->_internal_param4().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayText2.param4");
    target = stream->WriteStringMaybeAliased(
        7, this->_internal_param4(), 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:CUserMessageSayText2)
  return target;
}

size_t CUserMessageSayText2::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageSayText2)
  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 string messagename = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_messagename());
    }

    // optional string param1 = 4;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_param1());
    }

    // optional string param2 = 5;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_param2());
    }

    // optional string param3 = 6;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_param3());
    }

    // optional string param4 = 7;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_param4());
    }

    // optional bool chat = 2;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 1;
    }

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

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

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


void CUserMessageSayText2::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageSayText2*>(&to_msg);
  auto& from = static_cast<const CUserMessageSayText2&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageSayText2)
  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_set_messagename(from._internal_messagename());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_param1(from._internal_param1());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_param2(from._internal_param2());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_param3(from._internal_param3());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_set_param4(from._internal_param4());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.chat_ = from._impl_.chat_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.entityindex_ = from._impl_.entityindex_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageSayText2::InternalSwap(CUserMessageSayText2* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.messagename_, lhs_arena,
      &other->_impl_.messagename_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.param1_, lhs_arena,
      &other->_impl_.param1_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.param2_, lhs_arena,
      &other->_impl_.param2_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.param3_, lhs_arena,
      &other->_impl_.param3_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.param4_, lhs_arena,
      &other->_impl_.param4_, rhs_arena
  );
  swap(_impl_.chat_, other->_impl_.chat_);
  swap(_impl_.entityindex_, other->_impl_.entityindex_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageSayText2::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[12]);
}

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

class CUserMessageHudMsg::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageHudMsg>()._impl_._has_bits_);
  static void set_has_channel(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_x(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_y(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_color1(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_color2(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_effect(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_message(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessageHudMsg::CUserMessageHudMsg(::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:CUserMessageHudMsg)
}
CUserMessageHudMsg::CUserMessageHudMsg(const CUserMessageHudMsg& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageHudMsg* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.message_){}
    , decltype(_impl_.channel_){}
    , decltype(_impl_.x_){}
    , decltype(_impl_.y_){}
    , decltype(_impl_.color1_){}
    , decltype(_impl_.color2_){}
    , decltype(_impl_.effect_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_message()) {
    _this->_impl_.message_.Set(from._internal_message(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.channel_, &from._impl_.channel_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.effect_) -
    reinterpret_cast<char*>(&_impl_.channel_)) + sizeof(_impl_.effect_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageHudMsg)
}

inline void CUserMessageHudMsg::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_.message_){}
    , decltype(_impl_.channel_){0u}
    , decltype(_impl_.x_){0}
    , decltype(_impl_.y_){0}
    , decltype(_impl_.color1_){0u}
    , decltype(_impl_.color2_){0u}
    , decltype(_impl_.effect_){0u}
  };
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageHudMsg::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.message_.Destroy();
}

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

void CUserMessageHudMsg::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageHudMsg)
  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) {
    _impl_.message_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000007eu) {
    ::memset(&_impl_.channel_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.effect_) -
        reinterpret_cast<char*>(&_impl_.channel_)) + sizeof(_impl_.effect_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageHudMsg::_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 uint32 channel = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_channel(&has_bits);
          _impl_.channel_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float x = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_x(&has_bits);
          _impl_.x_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float y = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_y(&has_bits);
          _impl_.y_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 color1 = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_color1(&has_bits);
          _impl_.color1_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 color2 = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_color2(&has_bits);
          _impl_.color2_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 effect = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_effect(&has_bits);
          _impl_.effect_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string message = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          auto str = _internal_mutable_message();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageHudMsg.message");
          #endif  // !NDEBUG
        } 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* CUserMessageHudMsg::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageHudMsg)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 channel = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_channel(), target);
  }

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

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

  // optional fixed32 color1 = 4;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(4, this->_internal_color1(), target);
  }

  // optional fixed32 color2 = 5;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(5, this->_internal_color2(), target);
  }

  // optional uint32 effect = 6;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_effect(), target);
  }

  // optional string message = 11;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_message().data(), static_cast<int>(this->_internal_message().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageHudMsg.message");
    target = stream->WriteStringMaybeAliased(
        11, this->_internal_message(), 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:CUserMessageHudMsg)
  return target;
}

size_t CUserMessageHudMsg::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageHudMsg)
  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 string message = 11;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_message());
    }

    // optional uint32 channel = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_channel());
    }

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

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

    // optional fixed32 color1 = 4;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 4;
    }

    // optional fixed32 color2 = 5;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 4;
    }

    // optional uint32 effect = 6;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_effect());
    }

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

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


void CUserMessageHudMsg::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageHudMsg*>(&to_msg);
  auto& from = static_cast<const CUserMessageHudMsg&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageHudMsg)
  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_set_message(from._internal_message());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.channel_ = from._impl_.channel_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.x_ = from._impl_.x_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.y_ = from._impl_.y_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.color1_ = from._impl_.color1_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.color2_ = from._impl_.color2_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.effect_ = from._impl_.effect_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageHudMsg::InternalSwap(CUserMessageHudMsg* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.message_, lhs_arena,
      &other->_impl_.message_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageHudMsg, _impl_.effect_)
      + sizeof(CUserMessageHudMsg::_impl_.effect_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageHudMsg, _impl_.channel_)>(
          reinterpret_cast<char*>(&_impl_.channel_),
          reinterpret_cast<char*>(&other->_impl_.channel_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageHudMsg::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[13]);
}

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

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

CUserMessageHudText::CUserMessageHudText(::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:CUserMessageHudText)
}
CUserMessageHudText::CUserMessageHudText(const CUserMessageHudText& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageHudText* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.message_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_message()) {
    _this->_impl_.message_.Set(from._internal_message(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMessageHudText)
}

inline void CUserMessageHudText::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_.message_){}
  };
  _impl_.message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageHudText::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.message_.Destroy();
}

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

void CUserMessageHudText::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageHudText)
  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) {
    _impl_.message_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageHudText::_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 string message = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_message();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageHudText.message");
          #endif  // !NDEBUG
        } 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* CUserMessageHudText::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageHudText)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string message = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_message().data(), static_cast<int>(this->_internal_message().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageHudText.message");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_message(), 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:CUserMessageHudText)
  return target;
}

size_t CUserMessageHudText::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageHudText)
  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 string message = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_message());
  }

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

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


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

  if (from._internal_has_message()) {
    _this->_internal_set_message(from._internal_message());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageHudText::InternalSwap(CUserMessageHudText* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.message_, lhs_arena,
      &other->_impl_.message_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageHudText::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[14]);
}

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

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

CUserMessageTextMsg::CUserMessageTextMsg(::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:CUserMessageTextMsg)
}
CUserMessageTextMsg::CUserMessageTextMsg(const CUserMessageTextMsg& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageTextMsg* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.param_){from._impl_.param_}
    , decltype(_impl_.dest_){}};

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

inline void CUserMessageTextMsg::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_.param_){arena}
    , decltype(_impl_.dest_){0u}
  };
}

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

inline void CUserMessageTextMsg::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.param_.~RepeatedPtrField();
}

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

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

  _impl_.param_.Clear();
  _impl_.dest_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageTextMsg::_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 uint32 dest = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_dest(&has_bits);
          _impl_.dest_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated string param = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_param();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            #ifndef NDEBUG
            ::_pbi::VerifyUTF8(str, "CUserMessageTextMsg.param");
            #endif  // !NDEBUG
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(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* CUserMessageTextMsg::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageTextMsg)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 dest = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_dest(), target);
  }

  // repeated string param = 2;
  for (int i = 0, n = this->_internal_param_size(); i < n; i++) {
    const auto& s = this->_internal_param(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageTextMsg.param");
    target = stream->WriteString(2, s, 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:CUserMessageTextMsg)
  return target;
}

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

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

  // repeated string param = 2;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.param_.size());
  for (int i = 0, n = _impl_.param_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.param_.Get(i));
  }

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

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

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


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

  _this->_impl_.param_.MergeFrom(from._impl_.param_);
  if (from._internal_has_dest()) {
    _this->_internal_set_dest(from._internal_dest());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageTextMsg::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[15]);
}

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

class CUserMessageGameTitle::_Internal {
 public:
};

CUserMessageGameTitle::CUserMessageGameTitle(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMessageGameTitle)
}
CUserMessageGameTitle::CUserMessageGameTitle(const CUserMessageGameTitle& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMessageGameTitle* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMessageGameTitle)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageGameTitle::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageGameTitle::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageGameTitle::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[16]);
}

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

class CUserMessageResetHUD::_Internal {
 public:
};

CUserMessageResetHUD::CUserMessageResetHUD(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMessageResetHUD)
}
CUserMessageResetHUD::CUserMessageResetHUD(const CUserMessageResetHUD& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMessageResetHUD* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMessageResetHUD)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageResetHUD::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageResetHUD::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageResetHUD::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[17]);
}

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

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

CUserMessageSendAudio::CUserMessageSendAudio(::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:CUserMessageSendAudio)
}
CUserMessageSendAudio::CUserMessageSendAudio(const CUserMessageSendAudio& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageSendAudio* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.soundname_){}
    , decltype(_impl_.stop_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.soundname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.soundname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_soundname()) {
    _this->_impl_.soundname_.Set(from._internal_soundname(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.stop_ = from._impl_.stop_;
  // @@protoc_insertion_point(copy_constructor:CUserMessageSendAudio)
}

inline void CUserMessageSendAudio::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_.soundname_){}
    , decltype(_impl_.stop_){false}
  };
  _impl_.soundname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.soundname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageSendAudio::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.soundname_.Destroy();
}

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

void CUserMessageSendAudio::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageSendAudio)
  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) {
    _impl_.soundname_.ClearNonDefaultToEmpty();
  }
  _impl_.stop_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageSendAudio::_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 string soundname = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_soundname();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSendAudio.soundname");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool stop = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_stop(&has_bits);
          _impl_.stop_ = ::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* CUserMessageSendAudio::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageSendAudio)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string soundname = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_soundname().data(), static_cast<int>(this->_internal_soundname().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSendAudio.soundname");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_soundname(), target);
  }

  // optional bool stop = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_stop(), 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:CUserMessageSendAudio)
  return target;
}

size_t CUserMessageSendAudio::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageSendAudio)
  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 & 0x00000003u) {
    // optional string soundname = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_soundname());
    }

    // optional bool stop = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

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

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


void CUserMessageSendAudio::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageSendAudio*>(&to_msg);
  auto& from = static_cast<const CUserMessageSendAudio&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageSendAudio)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_soundname(from._internal_soundname());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.stop_ = from._impl_.stop_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageSendAudio::InternalSwap(CUserMessageSendAudio* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.soundname_, lhs_arena,
      &other->_impl_.soundname_, rhs_arena
  );
  swap(_impl_.stop_, other->_impl_.stop_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageSendAudio::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[18]);
}

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

class CUserMessageAudioParameter::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageAudioParameter>()._impl_._has_bits_);
  static void set_has_parameter_type(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_name_hash_code(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_value(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_int_value(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageAudioParameter::CUserMessageAudioParameter(::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:CUserMessageAudioParameter)
}
CUserMessageAudioParameter::CUserMessageAudioParameter(const CUserMessageAudioParameter& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageAudioParameter* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.parameter_type_){}
    , decltype(_impl_.name_hash_code_){}
    , decltype(_impl_.value_){}
    , decltype(_impl_.int_value_){}};

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

inline void CUserMessageAudioParameter::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_.parameter_type_){0u}
    , decltype(_impl_.name_hash_code_){0u}
    , decltype(_impl_.value_){0}
    , decltype(_impl_.int_value_){0u}
  };
}

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

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

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

void CUserMessageAudioParameter::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageAudioParameter)
  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) {
    ::memset(&_impl_.parameter_type_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.int_value_) -
        reinterpret_cast<char*>(&_impl_.parameter_type_)) + sizeof(_impl_.int_value_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageAudioParameter::_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 uint32 parameter_type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_parameter_type(&has_bits);
          _impl_.parameter_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 name_hash_code = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_name_hash_code(&has_bits);
          _impl_.name_hash_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float value = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_value(&has_bits);
          _impl_.value_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 int_value = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_int_value(&has_bits);
          _impl_.int_value_ = ::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* CUserMessageAudioParameter::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageAudioParameter)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 parameter_type = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_parameter_type(), target);
  }

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

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

  // optional uint32 int_value = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_int_value(), 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:CUserMessageAudioParameter)
  return target;
}

size_t CUserMessageAudioParameter::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageAudioParameter)
  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 & 0x0000000fu) {
    // optional uint32 parameter_type = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_parameter_type());
    }

    // optional uint32 name_hash_code = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_name_hash_code());
    }

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

    // optional uint32 int_value = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_int_value());
    }

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

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


void CUserMessageAudioParameter::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageAudioParameter*>(&to_msg);
  auto& from = static_cast<const CUserMessageAudioParameter&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageAudioParameter)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.parameter_type_ = from._impl_.parameter_type_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.name_hash_code_ = from._impl_.name_hash_code_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.value_ = from._impl_.value_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.int_value_ = from._impl_.int_value_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageAudioParameter::InternalSwap(CUserMessageAudioParameter* 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(CUserMessageAudioParameter, _impl_.int_value_)
      + sizeof(CUserMessageAudioParameter::_impl_.int_value_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageAudioParameter, _impl_.parameter_type_)>(
          reinterpret_cast<char*>(&_impl_.parameter_type_),
          reinterpret_cast<char*>(&other->_impl_.parameter_type_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageAudioParameter::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[19]);
}

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

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

CUserMessageVoiceMask::CUserMessageVoiceMask(::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:CUserMessageVoiceMask)
}
CUserMessageVoiceMask::CUserMessageVoiceMask(const CUserMessageVoiceMask& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageVoiceMask* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.gamerules_masks_){from._impl_.gamerules_masks_}
    , decltype(_impl_.ban_masks_){from._impl_.ban_masks_}
    , decltype(_impl_.mod_enable_){}};

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

inline void CUserMessageVoiceMask::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_.gamerules_masks_){arena}
    , decltype(_impl_.ban_masks_){arena}
    , decltype(_impl_.mod_enable_){false}
  };
}

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

inline void CUserMessageVoiceMask::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.gamerules_masks_.~RepeatedField();
  _impl_.ban_masks_.~RepeatedField();
}

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

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

  _impl_.gamerules_masks_.Clear();
  _impl_.ban_masks_.Clear();
  _impl_.mod_enable_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageVoiceMask::_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) {
      // repeated uint32 gamerules_masks = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_gamerules_masks(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<8>(ptr));
        } else if (static_cast<uint8_t>(tag) == 10) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_gamerules_masks(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated uint32 ban_masks = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_ban_masks(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<16>(ptr));
        } else if (static_cast<uint8_t>(tag) == 18) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_ban_masks(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool mod_enable = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_mod_enable(&has_bits);
          _impl_.mod_enable_ = ::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* CUserMessageVoiceMask::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageVoiceMask)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated uint32 gamerules_masks = 1;
  for (int i = 0, n = this->_internal_gamerules_masks_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_gamerules_masks(i), target);
  }

  // repeated uint32 ban_masks = 2;
  for (int i = 0, n = this->_internal_ban_masks_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_ban_masks(i), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool mod_enable = 3;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_mod_enable(), 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:CUserMessageVoiceMask)
  return target;
}

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

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

  // repeated uint32 gamerules_masks = 1;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.gamerules_masks_);
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_gamerules_masks_size());
    total_size += data_size;
  }

  // repeated uint32 ban_masks = 2;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.ban_masks_);
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_ban_masks_size());
    total_size += data_size;
  }

  // optional bool mod_enable = 3;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  _this->_impl_.gamerules_masks_.MergeFrom(from._impl_.gamerules_masks_);
  _this->_impl_.ban_masks_.MergeFrom(from._impl_.ban_masks_);
  if (from._internal_has_mod_enable()) {
    _this->_internal_set_mod_enable(from._internal_mod_enable());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageVoiceMask::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[20]);
}

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

class CUserMessageRequestState::_Internal {
 public:
};

CUserMessageRequestState::CUserMessageRequestState(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMessageRequestState)
}
CUserMessageRequestState::CUserMessageRequestState(const CUserMessageRequestState& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMessageRequestState* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestState)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestState::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestState::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestState::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[21]);
}

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

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

CUserMessageRumble::CUserMessageRumble(::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:CUserMessageRumble)
}
CUserMessageRumble::CUserMessageRumble(const CUserMessageRumble& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRumble* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.index_){}
    , decltype(_impl_.data_){}
    , decltype(_impl_.flags_){}};

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

inline void CUserMessageRumble::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_.index_){0}
    , decltype(_impl_.data_){0}
    , decltype(_impl_.flags_){0}
  };
}

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

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

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

void CUserMessageRumble::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRumble)
  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_.index_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.flags_) -
        reinterpret_cast<char*>(&_impl_.index_)) + sizeof(_impl_.flags_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRumble::_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 index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_index(&has_bits);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 data = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_data(&has_bits);
          _impl_.data_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 flags = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_flags(&has_bits);
          _impl_.flags_ = ::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* CUserMessageRumble::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRumble)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  // optional int32 flags = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_flags(), 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:CUserMessageRumble)
  return target;
}

size_t CUserMessageRumble::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRumble)
  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 int32 index = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_index());
    }

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

    // optional int32 flags = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_flags());
    }

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

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


void CUserMessageRumble::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRumble*>(&to_msg);
  auto& from = static_cast<const CUserMessageRumble&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRumble)
  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_.index_ = from._impl_.index_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.data_ = from._impl_.data_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.flags_ = from._impl_.flags_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageRumble::InternalSwap(CUserMessageRumble* 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(CUserMessageRumble, _impl_.flags_)
      + sizeof(CUserMessageRumble::_impl_.flags_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageRumble, _impl_.index_)>(
          reinterpret_cast<char*>(&_impl_.index_),
          reinterpret_cast<char*>(&other->_impl_.index_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRumble::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[22]);
}

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

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

CUserMessageSayTextChannel::CUserMessageSayTextChannel(::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:CUserMessageSayTextChannel)
}
CUserMessageSayTextChannel::CUserMessageSayTextChannel(const CUserMessageSayTextChannel& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageSayTextChannel* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.text_){}
    , decltype(_impl_.player_){}
    , decltype(_impl_.channel_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_text()) {
    _this->_impl_.text_.Set(from._internal_text(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.player_, &from._impl_.player_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.channel_) -
    reinterpret_cast<char*>(&_impl_.player_)) + sizeof(_impl_.channel_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageSayTextChannel)
}

inline void CUserMessageSayTextChannel::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_.text_){}
    , decltype(_impl_.player_){0}
    , decltype(_impl_.channel_){0}
  };
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageSayTextChannel::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.text_.Destroy();
}

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

void CUserMessageSayTextChannel::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageSayTextChannel)
  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) {
    _impl_.text_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    ::memset(&_impl_.player_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.channel_) -
        reinterpret_cast<char*>(&_impl_.player_)) + sizeof(_impl_.channel_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageSayTextChannel::_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 player = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_player(&has_bits);
          _impl_.player_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 channel = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_channel(&has_bits);
          _impl_.channel_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string text = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_text();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageSayTextChannel.text");
          #endif  // !NDEBUG
        } 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* CUserMessageSayTextChannel::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageSayTextChannel)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  // optional string text = 3;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_text().data(), static_cast<int>(this->_internal_text().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageSayTextChannel.text");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_text(), 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:CUserMessageSayTextChannel)
  return target;
}

size_t CUserMessageSayTextChannel::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageSayTextChannel)
  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 string text = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_text());
    }

    // optional int32 player = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_player());
    }

    // optional int32 channel = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_channel());
    }

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

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


void CUserMessageSayTextChannel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageSayTextChannel*>(&to_msg);
  auto& from = static_cast<const CUserMessageSayTextChannel&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageSayTextChannel)
  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->_internal_set_text(from._internal_text());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.player_ = from._impl_.player_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.channel_ = from._impl_.channel_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageSayTextChannel::InternalSwap(CUserMessageSayTextChannel* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.text_, lhs_arena,
      &other->_impl_.text_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageSayTextChannel, _impl_.channel_)
      + sizeof(CUserMessageSayTextChannel::_impl_.channel_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageSayTextChannel, _impl_.player_)>(
          reinterpret_cast<char*>(&_impl_.player_),
          reinterpret_cast<char*>(&other->_impl_.player_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageSayTextChannel::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[23]);
}

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

class CUserMessageColoredText::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageColoredText>()._impl_._has_bits_);
  static void set_has_color(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_text(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_reset(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_context_player_slot(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_context_value(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_context_team_id(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

CUserMessageColoredText::CUserMessageColoredText(::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:CUserMessageColoredText)
}
CUserMessageColoredText::CUserMessageColoredText(const CUserMessageColoredText& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageColoredText* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.text_){}
    , decltype(_impl_.color_){}
    , decltype(_impl_.reset_){}
    , decltype(_impl_.context_value_){}
    , decltype(_impl_.context_team_id_){}
    , decltype(_impl_.context_player_slot_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_text()) {
    _this->_impl_.text_.Set(from._internal_text(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.color_, &from._impl_.color_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.context_player_slot_) -
    reinterpret_cast<char*>(&_impl_.color_)) + sizeof(_impl_.context_player_slot_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageColoredText)
}

inline void CUserMessageColoredText::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_.text_){}
    , decltype(_impl_.color_){0u}
    , decltype(_impl_.reset_){false}
    , decltype(_impl_.context_value_){0}
    , decltype(_impl_.context_team_id_){0}
    , decltype(_impl_.context_player_slot_){-1}
  };
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageColoredText::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.text_.Destroy();
}

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

void CUserMessageColoredText::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageColoredText)
  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) {
    _impl_.text_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000003eu) {
    ::memset(&_impl_.color_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.context_team_id_) -
        reinterpret_cast<char*>(&_impl_.color_)) + sizeof(_impl_.context_team_id_));
    _impl_.context_player_slot_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageColoredText::_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 uint32 color = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_color(&has_bits);
          _impl_.color_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string text = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_text();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageColoredText.text");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool reset = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_reset(&has_bits);
          _impl_.reset_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 context_player_slot = 4 [default = -1];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_context_player_slot(&has_bits);
          _impl_.context_player_slot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 context_value = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_context_value(&has_bits);
          _impl_.context_value_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 context_team_id = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_context_team_id(&has_bits);
          _impl_.context_team_id_ = ::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* CUserMessageColoredText::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageColoredText)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 color = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_color(), target);
  }

  // optional string text = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_text().data(), static_cast<int>(this->_internal_text().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageColoredText.text");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_text(), target);
  }

  // optional bool reset = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_reset(), target);
  }

  // optional int32 context_player_slot = 4 [default = -1];
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_context_player_slot(), target);
  }

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

  // optional int32 context_team_id = 6;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_context_team_id(), 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:CUserMessageColoredText)
  return target;
}

size_t CUserMessageColoredText::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageColoredText)
  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 & 0x0000003fu) {
    // optional string text = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_text());
    }

    // optional uint32 color = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_color());
    }

    // optional bool reset = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional int32 context_value = 5;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_context_value());
    }

    // optional int32 context_team_id = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_context_team_id());
    }

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

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

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


void CUserMessageColoredText::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageColoredText*>(&to_msg);
  auto& from = static_cast<const CUserMessageColoredText&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageColoredText)
  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 & 0x0000003fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_text(from._internal_text());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.color_ = from._impl_.color_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.reset_ = from._impl_.reset_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.context_value_ = from._impl_.context_value_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.context_team_id_ = from._impl_.context_team_id_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.context_player_slot_ = from._impl_.context_player_slot_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageColoredText::InternalSwap(CUserMessageColoredText* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.text_, lhs_arena,
      &other->_impl_.text_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageColoredText, _impl_.context_team_id_)
      + sizeof(CUserMessageColoredText::_impl_.context_team_id_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageColoredText, _impl_.color_)>(
          reinterpret_cast<char*>(&_impl_.color_),
          reinterpret_cast<char*>(&other->_impl_.color_));
  swap(_impl_.context_player_slot_, other->_impl_.context_player_slot_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageColoredText::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[24]);
}

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

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

CUserMessageItemPickup::CUserMessageItemPickup(::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:CUserMessageItemPickup)
}
CUserMessageItemPickup::CUserMessageItemPickup(const CUserMessageItemPickup& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageItemPickup* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.itemname_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.itemname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.itemname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_itemname()) {
    _this->_impl_.itemname_.Set(from._internal_itemname(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMessageItemPickup)
}

inline void CUserMessageItemPickup::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_.itemname_){}
  };
  _impl_.itemname_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.itemname_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageItemPickup::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.itemname_.Destroy();
}

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

void CUserMessageItemPickup::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageItemPickup)
  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) {
    _impl_.itemname_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageItemPickup::_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 string itemname = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_itemname();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageItemPickup.itemname");
          #endif  // !NDEBUG
        } 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* CUserMessageItemPickup::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageItemPickup)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string itemname = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_itemname().data(), static_cast<int>(this->_internal_itemname().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageItemPickup.itemname");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_itemname(), 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:CUserMessageItemPickup)
  return target;
}

size_t CUserMessageItemPickup::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageItemPickup)
  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 string itemname = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_itemname());
  }

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

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


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

  if (from._internal_has_itemname()) {
    _this->_internal_set_itemname(from._internal_itemname());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageItemPickup::InternalSwap(CUserMessageItemPickup* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.itemname_, lhs_arena,
      &other->_impl_.itemname_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageItemPickup::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[25]);
}

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

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

CUserMessageAmmoDenied::CUserMessageAmmoDenied(::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:CUserMessageAmmoDenied)
}
CUserMessageAmmoDenied::CUserMessageAmmoDenied(const CUserMessageAmmoDenied& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageAmmoDenied* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.ammo_id_){}};

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

inline void CUserMessageAmmoDenied::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_.ammo_id_){0u}
  };
}

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

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

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

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

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

const char* CUserMessageAmmoDenied::_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 uint32 ammo_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_ammo_id(&has_bits);
          _impl_.ammo_id_ = ::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* CUserMessageAmmoDenied::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageAmmoDenied)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 ammo_id = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_ammo_id(), 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:CUserMessageAmmoDenied)
  return target;
}

size_t CUserMessageAmmoDenied::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageAmmoDenied)
  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 uint32 ammo_id = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_ammo_id());
  }

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

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


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

  if (from._internal_has_ammo_id()) {
    _this->_internal_set_ammo_id(from._internal_ammo_id());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageAmmoDenied::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[26]);
}

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

class CUserMessageShowMenu::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageShowMenu>()._impl_._has_bits_);
  static void set_has_validslots(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_displaytime(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_needmore(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_menustring(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessageShowMenu::CUserMessageShowMenu(::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:CUserMessageShowMenu)
}
CUserMessageShowMenu::CUserMessageShowMenu(const CUserMessageShowMenu& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageShowMenu* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.menustring_){}
    , decltype(_impl_.validslots_){}
    , decltype(_impl_.displaytime_){}
    , decltype(_impl_.needmore_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.menustring_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.menustring_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_menustring()) {
    _this->_impl_.menustring_.Set(from._internal_menustring(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.validslots_, &from._impl_.validslots_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.needmore_) -
    reinterpret_cast<char*>(&_impl_.validslots_)) + sizeof(_impl_.needmore_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageShowMenu)
}

inline void CUserMessageShowMenu::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_.menustring_){}
    , decltype(_impl_.validslots_){0u}
    , decltype(_impl_.displaytime_){0u}
    , decltype(_impl_.needmore_){false}
  };
  _impl_.menustring_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.menustring_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageShowMenu::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.menustring_.Destroy();
}

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

void CUserMessageShowMenu::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageShowMenu)
  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) {
    _impl_.menustring_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.validslots_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.needmore_) -
        reinterpret_cast<char*>(&_impl_.validslots_)) + sizeof(_impl_.needmore_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageShowMenu::_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 uint32 validslots = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_validslots(&has_bits);
          _impl_.validslots_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 displaytime = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_displaytime(&has_bits);
          _impl_.displaytime_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool needmore = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_needmore(&has_bits);
          _impl_.needmore_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string menustring = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_menustring();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageShowMenu.menustring");
          #endif  // !NDEBUG
        } 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* CUserMessageShowMenu::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageShowMenu)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 validslots = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_validslots(), target);
  }

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

  // optional bool needmore = 3;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_needmore(), target);
  }

  // optional string menustring = 4;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_menustring().data(), static_cast<int>(this->_internal_menustring().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageShowMenu.menustring");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_menustring(), 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:CUserMessageShowMenu)
  return target;
}

size_t CUserMessageShowMenu::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageShowMenu)
  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 & 0x0000000fu) {
    // optional string menustring = 4;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_menustring());
    }

    // optional uint32 validslots = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_validslots());
    }

    // optional uint32 displaytime = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_displaytime());
    }

    // optional bool needmore = 3;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 1;
    }

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

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


void CUserMessageShowMenu::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageShowMenu*>(&to_msg);
  auto& from = static_cast<const CUserMessageShowMenu&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageShowMenu)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_menustring(from._internal_menustring());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.validslots_ = from._impl_.validslots_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.displaytime_ = from._impl_.displaytime_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.needmore_ = from._impl_.needmore_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageShowMenu::InternalSwap(CUserMessageShowMenu* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.menustring_, lhs_arena,
      &other->_impl_.menustring_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageShowMenu, _impl_.needmore_)
      + sizeof(CUserMessageShowMenu::_impl_.needmore_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageShowMenu, _impl_.validslots_)>(
          reinterpret_cast<char*>(&_impl_.validslots_),
          reinterpret_cast<char*>(&other->_impl_.validslots_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageShowMenu::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[27]);
}

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

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

CUserMessageCreditsMsg::CUserMessageCreditsMsg(::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:CUserMessageCreditsMsg)
}
CUserMessageCreditsMsg::CUserMessageCreditsMsg(const CUserMessageCreditsMsg& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCreditsMsg* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.logo_length_){}
    , decltype(_impl_.rolltype_){}};

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

inline void CUserMessageCreditsMsg::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_.logo_length_){0}
    , decltype(_impl_.rolltype_){-1}
  };
}

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

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

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

void CUserMessageCreditsMsg::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCreditsMsg)
  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 & 0x00000003u) {
    _impl_.logo_length_ = 0;
    _impl_.rolltype_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCreditsMsg::_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 .eRollType rolltype = 1 [default = ROLL_NONE];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          if (PROTOBUF_PREDICT_TRUE(::eRollType_IsValid(val))) {
            _internal_set_rolltype(static_cast<::eRollType>(val));
          } else {
            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
          }
        } else
          goto handle_unusual;
        continue;
      // optional float logo_length = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_logo_length(&has_bits);
          _impl_.logo_length_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageCreditsMsg::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCreditsMsg)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional .eRollType rolltype = 1 [default = ROLL_NONE];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_rolltype(), target);
  }

  // optional float logo_length = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_logo_length(), 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:CUserMessageCreditsMsg)
  return target;
}

size_t CUserMessageCreditsMsg::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCreditsMsg)
  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 & 0x00000003u) {
    // optional float logo_length = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional .eRollType rolltype = 1 [default = ROLL_NONE];
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::_pbi::WireFormatLite::EnumSize(this->_internal_rolltype());
    }

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

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


void CUserMessageCreditsMsg::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCreditsMsg*>(&to_msg);
  auto& from = static_cast<const CUserMessageCreditsMsg&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCreditsMsg)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.logo_length_ = from._impl_.logo_length_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.rolltype_ = from._impl_.rolltype_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCreditsMsg::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[28]);
}

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

class CEntityMessagePlayJingle::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessagePlayJingle>()._impl_._has_bits_);
  static const ::CEntityMsg& entity_msg(const CEntityMessagePlayJingle* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CEntityMsg&
CEntityMessagePlayJingle::_Internal::entity_msg(const CEntityMessagePlayJingle* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessagePlayJingle::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CEntityMessagePlayJingle::CEntityMessagePlayJingle(::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:CEntityMessagePlayJingle)
}
CEntityMessagePlayJingle::CEntityMessagePlayJingle(const CEntityMessagePlayJingle& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessagePlayJingle* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.entity_msg_){nullptr}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  // @@protoc_insertion_point(copy_constructor:CEntityMessagePlayJingle)
}

inline void CEntityMessagePlayJingle::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_.entity_msg_){nullptr}
  };
}

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

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

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

void CEntityMessagePlayJingle::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessagePlayJingle)
  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_.entity_msg_ != nullptr);
    _impl_.entity_msg_->Clear();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessagePlayJingle::_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 .CEntityMsg entity_msg = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessagePlayJingle::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessagePlayJingle)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  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:CEntityMessagePlayJingle)
  return target;
}

size_t CEntityMessagePlayJingle::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessagePlayJingle)
  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 .CEntityMsg entity_msg = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.entity_msg_);
  }

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

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


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

  if (from._internal_has_entity_msg()) {
    _this->_internal_mutable_entity_msg()->::CEntityMsg::MergeFrom(
        from._internal_entity_msg());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessagePlayJingle::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[29]);
}

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

class CEntityMessageScreenOverlay::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessageScreenOverlay>()._impl_._has_bits_);
  static void set_has_start_effect(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CEntityMsg& entity_msg(const CEntityMessageScreenOverlay* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CEntityMsg&
CEntityMessageScreenOverlay::_Internal::entity_msg(const CEntityMessageScreenOverlay* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessageScreenOverlay::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CEntityMessageScreenOverlay::CEntityMessageScreenOverlay(::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:CEntityMessageScreenOverlay)
}
CEntityMessageScreenOverlay::CEntityMessageScreenOverlay(const CEntityMessageScreenOverlay& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessageScreenOverlay* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.entity_msg_){nullptr}
    , decltype(_impl_.start_effect_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  _this->_impl_.start_effect_ = from._impl_.start_effect_;
  // @@protoc_insertion_point(copy_constructor:CEntityMessageScreenOverlay)
}

inline void CEntityMessageScreenOverlay::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_.entity_msg_){nullptr}
    , decltype(_impl_.start_effect_){false}
  };
}

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

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

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

void CEntityMessageScreenOverlay::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessageScreenOverlay)
  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_.entity_msg_ != nullptr);
    _impl_.entity_msg_->Clear();
  }
  _impl_.start_effect_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessageScreenOverlay::_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 bool start_effect = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_start_effect(&has_bits);
          _impl_.start_effect_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CEntityMsg entity_msg = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessageScreenOverlay::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessageScreenOverlay)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool start_effect = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_start_effect(), target);
  }

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

  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:CEntityMessageScreenOverlay)
  return target;
}

size_t CEntityMessageScreenOverlay::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessageScreenOverlay)
  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 & 0x00000003u) {
    // optional .CEntityMsg entity_msg = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.entity_msg_);
    }

    // optional bool start_effect = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

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

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


void CEntityMessageScreenOverlay::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CEntityMessageScreenOverlay*>(&to_msg);
  auto& from = static_cast<const CEntityMessageScreenOverlay&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CEntityMessageScreenOverlay)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_entity_msg()->::CEntityMsg::MergeFrom(
          from._internal_entity_msg());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.start_effect_ = from._impl_.start_effect_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CEntityMessageScreenOverlay::InternalSwap(CEntityMessageScreenOverlay* 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(CEntityMessageScreenOverlay, _impl_.start_effect_)
      + sizeof(CEntityMessageScreenOverlay::_impl_.start_effect_)
      - PROTOBUF_FIELD_OFFSET(CEntityMessageScreenOverlay, _impl_.entity_msg_)>(
          reinterpret_cast<char*>(&_impl_.entity_msg_),
          reinterpret_cast<char*>(&other->_impl_.entity_msg_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessageScreenOverlay::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[30]);
}

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

class CEntityMessageRemoveAllDecals::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessageRemoveAllDecals>()._impl_._has_bits_);
  static void set_has_remove_decals(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CEntityMsg& entity_msg(const CEntityMessageRemoveAllDecals* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CEntityMsg&
CEntityMessageRemoveAllDecals::_Internal::entity_msg(const CEntityMessageRemoveAllDecals* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessageRemoveAllDecals::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CEntityMessageRemoveAllDecals::CEntityMessageRemoveAllDecals(::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:CEntityMessageRemoveAllDecals)
}
CEntityMessageRemoveAllDecals::CEntityMessageRemoveAllDecals(const CEntityMessageRemoveAllDecals& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessageRemoveAllDecals* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.entity_msg_){nullptr}
    , decltype(_impl_.remove_decals_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  _this->_impl_.remove_decals_ = from._impl_.remove_decals_;
  // @@protoc_insertion_point(copy_constructor:CEntityMessageRemoveAllDecals)
}

inline void CEntityMessageRemoveAllDecals::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_.entity_msg_){nullptr}
    , decltype(_impl_.remove_decals_){false}
  };
}

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

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

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

void CEntityMessageRemoveAllDecals::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessageRemoveAllDecals)
  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_.entity_msg_ != nullptr);
    _impl_.entity_msg_->Clear();
  }
  _impl_.remove_decals_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessageRemoveAllDecals::_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 bool remove_decals = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_remove_decals(&has_bits);
          _impl_.remove_decals_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CEntityMsg entity_msg = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessageRemoveAllDecals::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessageRemoveAllDecals)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool remove_decals = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_remove_decals(), target);
  }

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

  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:CEntityMessageRemoveAllDecals)
  return target;
}

size_t CEntityMessageRemoveAllDecals::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessageRemoveAllDecals)
  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 & 0x00000003u) {
    // optional .CEntityMsg entity_msg = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.entity_msg_);
    }

    // optional bool remove_decals = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

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

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


void CEntityMessageRemoveAllDecals::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CEntityMessageRemoveAllDecals*>(&to_msg);
  auto& from = static_cast<const CEntityMessageRemoveAllDecals&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CEntityMessageRemoveAllDecals)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_entity_msg()->::CEntityMsg::MergeFrom(
          from._internal_entity_msg());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.remove_decals_ = from._impl_.remove_decals_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CEntityMessageRemoveAllDecals::InternalSwap(CEntityMessageRemoveAllDecals* 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(CEntityMessageRemoveAllDecals, _impl_.remove_decals_)
      + sizeof(CEntityMessageRemoveAllDecals::_impl_.remove_decals_)
      - PROTOBUF_FIELD_OFFSET(CEntityMessageRemoveAllDecals, _impl_.entity_msg_)>(
          reinterpret_cast<char*>(&_impl_.entity_msg_),
          reinterpret_cast<char*>(&other->_impl_.entity_msg_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessageRemoveAllDecals::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[31]);
}

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

class CEntityMessagePropagateForce::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessagePropagateForce>()._impl_._has_bits_);
  static const ::CMsgVector& impulse(const CEntityMessagePropagateForce* msg);
  static void set_has_impulse(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CEntityMsg& entity_msg(const CEntityMessagePropagateForce* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgVector&
CEntityMessagePropagateForce::_Internal::impulse(const CEntityMessagePropagateForce* msg) {
  return *msg->_impl_.impulse_;
}
const ::CEntityMsg&
CEntityMessagePropagateForce::_Internal::entity_msg(const CEntityMessagePropagateForce* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessagePropagateForce::clear_impulse() {
  if (_impl_.impulse_ != nullptr) _impl_.impulse_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CEntityMessagePropagateForce::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CEntityMessagePropagateForce::CEntityMessagePropagateForce(::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:CEntityMessagePropagateForce)
}
CEntityMessagePropagateForce::CEntityMessagePropagateForce(const CEntityMessagePropagateForce& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessagePropagateForce* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.impulse_){nullptr}
    , decltype(_impl_.entity_msg_){nullptr}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_impulse()) {
    _this->_impl_.impulse_ = new ::CMsgVector(*from._impl_.impulse_);
  }
  if (from._internal_has_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  // @@protoc_insertion_point(copy_constructor:CEntityMessagePropagateForce)
}

inline void CEntityMessagePropagateForce::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_.impulse_){nullptr}
    , decltype(_impl_.entity_msg_){nullptr}
  };
}

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

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

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

void CEntityMessagePropagateForce::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessagePropagateForce)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.impulse_ != nullptr);
      _impl_.impulse_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.entity_msg_ != nullptr);
      _impl_.entity_msg_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessagePropagateForce::_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 impulse = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_impulse(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CEntityMsg entity_msg = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessagePropagateForce::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessagePropagateForce)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  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:CEntityMessagePropagateForce)
  return target;
}

size_t CEntityMessagePropagateForce::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessagePropagateForce)
  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 & 0x00000003u) {
    // optional .CMsgVector impulse = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.impulse_);
    }

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

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

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


void CEntityMessagePropagateForce::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CEntityMessagePropagateForce*>(&to_msg);
  auto& from = static_cast<const CEntityMessagePropagateForce&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CEntityMessagePropagateForce)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_impulse()->::CMsgVector::MergeFrom(
          from._internal_impulse());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_entity_msg()->::CEntityMsg::MergeFrom(
          from._internal_entity_msg());
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CEntityMessagePropagateForce::InternalSwap(CEntityMessagePropagateForce* 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(CEntityMessagePropagateForce, _impl_.entity_msg_)
      + sizeof(CEntityMessagePropagateForce::_impl_.entity_msg_)
      - PROTOBUF_FIELD_OFFSET(CEntityMessagePropagateForce, _impl_.impulse_)>(
          reinterpret_cast<char*>(&_impl_.impulse_),
          reinterpret_cast<char*>(&other->_impl_.impulse_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessagePropagateForce::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[32]);
}

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

class CEntityMessageDoSpark::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessageDoSpark>()._impl_._has_bits_);
  static const ::CMsgVector& origin(const CEntityMessageDoSpark* msg);
  static void set_has_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_entityindex(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_radius(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_color(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_beams(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_thick(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static const ::CEntityMsg& entity_msg(const CEntityMessageDoSpark* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgVector&
CEntityMessageDoSpark::_Internal::origin(const CEntityMessageDoSpark* msg) {
  return *msg->_impl_.origin_;
}
const ::CEntityMsg&
CEntityMessageDoSpark::_Internal::entity_msg(const CEntityMessageDoSpark* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessageDoSpark::clear_origin() {
  if (_impl_.origin_ != nullptr) _impl_.origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CEntityMessageDoSpark::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CEntityMessageDoSpark::CEntityMessageDoSpark(::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:CEntityMessageDoSpark)
}
CEntityMessageDoSpark::CEntityMessageDoSpark(const CEntityMessageDoSpark& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessageDoSpark* 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_.entity_msg_){nullptr}
    , decltype(_impl_.radius_){}
    , decltype(_impl_.color_){}
    , decltype(_impl_.beams_){}
    , decltype(_impl_.thick_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.entityindex_){}};

  _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_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  ::memcpy(&_impl_.radius_, &from._impl_.radius_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.entityindex_) -
    reinterpret_cast<char*>(&_impl_.radius_)) + sizeof(_impl_.entityindex_));
  // @@protoc_insertion_point(copy_constructor:CEntityMessageDoSpark)
}

inline void CEntityMessageDoSpark::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_.entity_msg_){nullptr}
    , decltype(_impl_.radius_){0}
    , decltype(_impl_.color_){0u}
    , decltype(_impl_.beams_){0u}
    , decltype(_impl_.thick_){0}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.entityindex_){-1}
  };
}

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

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

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

void CEntityMessageDoSpark::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessageDoSpark)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.origin_ != nullptr);
      _impl_.origin_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.entity_msg_ != nullptr);
      _impl_.entity_msg_->Clear();
    }
  }
  if (cached_has_bits & 0x000000fcu) {
    ::memset(&_impl_.radius_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.duration_) -
        reinterpret_cast<char*>(&_impl_.radius_)) + sizeof(_impl_.duration_));
    _impl_.entityindex_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessageDoSpark::_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 int32 entityindex = 2 [default = -1];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_entityindex(&has_bits);
          _impl_.entityindex_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float radius = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_radius(&has_bits);
          _impl_.radius_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 color = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_color(&has_bits);
          _impl_.color_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 beams = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_beams(&has_bits);
          _impl_.beams_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float thick = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 53)) {
          _Internal::set_has_thick(&has_bits);
          _impl_.thick_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 61)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional .CEntityMsg entity_msg = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessageDoSpark::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessageDoSpark)
  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 int32 entityindex = 2 [default = -1];
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_entityindex(), target);
  }

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

  // optional fixed32 color = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(4, this->_internal_color(), target);
  }

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

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

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

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

  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:CEntityMessageDoSpark)
  return target;
}

size_t CEntityMessageDoSpark::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessageDoSpark)
  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 .CEntityMsg entity_msg = 8;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.entity_msg_);
    }

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

    // optional fixed32 color = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

    // optional uint32 beams = 5;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_beams());
    }

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

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

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

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

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


void CEntityMessageDoSpark::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CEntityMessageDoSpark*>(&to_msg);
  auto& from = static_cast<const CEntityMessageDoSpark&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CEntityMessageDoSpark)
  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_entity_msg()->::CEntityMsg::MergeFrom(
          from._internal_entity_msg());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.radius_ = from._impl_.radius_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.color_ = from._impl_.color_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.beams_ = from._impl_.beams_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.thick_ = from._impl_.thick_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.entityindex_ = from._impl_.entityindex_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CEntityMessageDoSpark::InternalSwap(CEntityMessageDoSpark* 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(CEntityMessageDoSpark, _impl_.duration_)
      + sizeof(CEntityMessageDoSpark::_impl_.duration_)
      - PROTOBUF_FIELD_OFFSET(CEntityMessageDoSpark, _impl_.origin_)>(
          reinterpret_cast<char*>(&_impl_.origin_),
          reinterpret_cast<char*>(&other->_impl_.origin_));
  swap(_impl_.entityindex_, other->_impl_.entityindex_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessageDoSpark::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[33]);
}

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

class CEntityMessageFixAngle::_Internal {
 public:
  using HasBits = decltype(std::declval<CEntityMessageFixAngle>()._impl_._has_bits_);
  static void set_has_relative(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgQAngle& angle(const CEntityMessageFixAngle* msg);
  static void set_has_angle(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CEntityMsg& entity_msg(const CEntityMessageFixAngle* msg);
  static void set_has_entity_msg(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgQAngle&
CEntityMessageFixAngle::_Internal::angle(const CEntityMessageFixAngle* msg) {
  return *msg->_impl_.angle_;
}
const ::CEntityMsg&
CEntityMessageFixAngle::_Internal::entity_msg(const CEntityMessageFixAngle* msg) {
  return *msg->_impl_.entity_msg_;
}
void CEntityMessageFixAngle::clear_angle() {
  if (_impl_.angle_ != nullptr) _impl_.angle_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CEntityMessageFixAngle::clear_entity_msg() {
  if (_impl_.entity_msg_ != nullptr) _impl_.entity_msg_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CEntityMessageFixAngle::CEntityMessageFixAngle(::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:CEntityMessageFixAngle)
}
CEntityMessageFixAngle::CEntityMessageFixAngle(const CEntityMessageFixAngle& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CEntityMessageFixAngle* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.angle_){nullptr}
    , decltype(_impl_.entity_msg_){nullptr}
    , decltype(_impl_.relative_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_angle()) {
    _this->_impl_.angle_ = new ::CMsgQAngle(*from._impl_.angle_);
  }
  if (from._internal_has_entity_msg()) {
    _this->_impl_.entity_msg_ = new ::CEntityMsg(*from._impl_.entity_msg_);
  }
  _this->_impl_.relative_ = from._impl_.relative_;
  // @@protoc_insertion_point(copy_constructor:CEntityMessageFixAngle)
}

inline void CEntityMessageFixAngle::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_.angle_){nullptr}
    , decltype(_impl_.entity_msg_){nullptr}
    , decltype(_impl_.relative_){false}
  };
}

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

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

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

void CEntityMessageFixAngle::Clear() {
// @@protoc_insertion_point(message_clear_start:CEntityMessageFixAngle)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.angle_ != nullptr);
      _impl_.angle_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.entity_msg_ != nullptr);
      _impl_.entity_msg_->Clear();
    }
  }
  _impl_.relative_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CEntityMessageFixAngle::_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 bool relative = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_relative(&has_bits);
          _impl_.relative_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgQAngle angle = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_angle(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CEntityMsg entity_msg = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_entity_msg(), 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* CEntityMessageFixAngle::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CEntityMessageFixAngle)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool relative = 1;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_relative(), target);
  }

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

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

  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:CEntityMessageFixAngle)
  return target;
}

size_t CEntityMessageFixAngle::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CEntityMessageFixAngle)
  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 .CMsgQAngle angle = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.angle_);
    }

    // optional .CEntityMsg entity_msg = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.entity_msg_);
    }

    // optional bool relative = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

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

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


void CEntityMessageFixAngle::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CEntityMessageFixAngle*>(&to_msg);
  auto& from = static_cast<const CEntityMessageFixAngle&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CEntityMessageFixAngle)
  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->_internal_mutable_angle()->::CMsgQAngle::MergeFrom(
          from._internal_angle());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_entity_msg()->::CEntityMsg::MergeFrom(
          from._internal_entity_msg());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.relative_ = from._impl_.relative_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CEntityMessageFixAngle::InternalSwap(CEntityMessageFixAngle* 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(CEntityMessageFixAngle, _impl_.relative_)
      + sizeof(CEntityMessageFixAngle::_impl_.relative_)
      - PROTOBUF_FIELD_OFFSET(CEntityMessageFixAngle, _impl_.angle_)>(
          reinterpret_cast<char*>(&_impl_.angle_),
          reinterpret_cast<char*>(&other->_impl_.angle_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CEntityMessageFixAngle::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[34]);
}

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

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

CUserMessageCameraTransition_Transition_DataDriven::CUserMessageCameraTransition_Transition_DataDriven(::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:CUserMessageCameraTransition.Transition_DataDriven)
}
CUserMessageCameraTransition_Transition_DataDriven::CUserMessageCameraTransition_Transition_DataDriven(const CUserMessageCameraTransition_Transition_DataDriven& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCameraTransition_Transition_DataDriven* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.filename_){}
    , decltype(_impl_.duration_){}
    , decltype(_impl_.attach_ent_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_filename()) {
    _this->_impl_.filename_.Set(from._internal_filename(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.duration_, &from._impl_.duration_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.attach_ent_index_) -
    reinterpret_cast<char*>(&_impl_.duration_)) + sizeof(_impl_.attach_ent_index_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageCameraTransition.Transition_DataDriven)
}

inline void CUserMessageCameraTransition_Transition_DataDriven::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_.filename_){}
    , decltype(_impl_.duration_){0}
    , decltype(_impl_.attach_ent_index_){-1}
  };
  _impl_.filename_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.filename_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMessageCameraTransition_Transition_DataDriven::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.filename_.Destroy();
}

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

void CUserMessageCameraTransition_Transition_DataDriven::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCameraTransition.Transition_DataDriven)
  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) {
    _impl_.filename_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    _impl_.duration_ = 0;
    _impl_.attach_ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCameraTransition_Transition_DataDriven::_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 string filename = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_filename();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageCameraTransition.Transition_DataDriven.filename");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional int32 attach_ent_index = 2 [default = -1];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_attach_ent_index(&has_bits);
          _impl_.attach_ent_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageCameraTransition_Transition_DataDriven::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCameraTransition.Transition_DataDriven)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string filename = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_filename().data(), static_cast<int>(this->_internal_filename().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageCameraTransition.Transition_DataDriven.filename");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_filename(), target);
  }

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

  // optional float duration = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_duration(), 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:CUserMessageCameraTransition.Transition_DataDriven)
  return target;
}

size_t CUserMessageCameraTransition_Transition_DataDriven::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCameraTransition.Transition_DataDriven)
  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 string filename = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_filename());
    }

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

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

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

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


void CUserMessageCameraTransition_Transition_DataDriven::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCameraTransition_Transition_DataDriven*>(&to_msg);
  auto& from = static_cast<const CUserMessageCameraTransition_Transition_DataDriven&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCameraTransition.Transition_DataDriven)
  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->_internal_set_filename(from._internal_filename());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.attach_ent_index_ = from._impl_.attach_ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageCameraTransition_Transition_DataDriven::InternalSwap(CUserMessageCameraTransition_Transition_DataDriven* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.filename_, lhs_arena,
      &other->_impl_.filename_, rhs_arena
  );
  swap(_impl_.duration_, other->_impl_.duration_);
  swap(_impl_.attach_ent_index_, other->_impl_.attach_ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCameraTransition_Transition_DataDriven::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[35]);
}

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

class CUserMessageCameraTransition::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageCameraTransition>()._impl_._has_bits_);
  static void set_has_camera_type(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CUserMessageCameraTransition_Transition_DataDriven& params_data_driven(const CUserMessageCameraTransition* msg);
  static void set_has_params_data_driven(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CUserMessageCameraTransition_Transition_DataDriven&
CUserMessageCameraTransition::_Internal::params_data_driven(const CUserMessageCameraTransition* msg) {
  return *msg->_impl_.params_data_driven_;
}
CUserMessageCameraTransition::CUserMessageCameraTransition(::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:CUserMessageCameraTransition)
}
CUserMessageCameraTransition::CUserMessageCameraTransition(const CUserMessageCameraTransition& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageCameraTransition* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.params_data_driven_){nullptr}
    , decltype(_impl_.camera_type_){}
    , decltype(_impl_.duration_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_params_data_driven()) {
    _this->_impl_.params_data_driven_ = new ::CUserMessageCameraTransition_Transition_DataDriven(*from._impl_.params_data_driven_);
  }
  ::memcpy(&_impl_.camera_type_, &from._impl_.camera_type_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.duration_) -
    reinterpret_cast<char*>(&_impl_.camera_type_)) + sizeof(_impl_.duration_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageCameraTransition)
}

inline void CUserMessageCameraTransition::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_.params_data_driven_){nullptr}
    , decltype(_impl_.camera_type_){0u}
    , decltype(_impl_.duration_){0}
  };
}

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

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

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

void CUserMessageCameraTransition::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageCameraTransition)
  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_.params_data_driven_ != nullptr);
    _impl_.params_data_driven_->Clear();
  }
  if (cached_has_bits & 0x00000006u) {
    ::memset(&_impl_.camera_type_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.duration_) -
        reinterpret_cast<char*>(&_impl_.camera_type_)) + sizeof(_impl_.duration_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageCameraTransition::_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 uint32 camera_type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_camera_type(&has_bits);
          _impl_.camera_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMessageCameraTransition.Transition_DataDriven params_data_driven = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_params_data_driven(), 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* CUserMessageCameraTransition::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageCameraTransition)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 camera_type = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_camera_type(), target);
  }

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

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

  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:CUserMessageCameraTransition)
  return target;
}

size_t CUserMessageCameraTransition::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageCameraTransition)
  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 .CUserMessageCameraTransition.Transition_DataDriven params_data_driven = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.params_data_driven_);
    }

    // optional uint32 camera_type = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_camera_type());
    }

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

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

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


void CUserMessageCameraTransition::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageCameraTransition*>(&to_msg);
  auto& from = static_cast<const CUserMessageCameraTransition&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageCameraTransition)
  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->_internal_mutable_params_data_driven()->::CUserMessageCameraTransition_Transition_DataDriven::MergeFrom(
          from._internal_params_data_driven());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.camera_type_ = from._impl_.camera_type_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMessageCameraTransition::InternalSwap(CUserMessageCameraTransition* 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(CUserMessageCameraTransition, _impl_.duration_)
      + sizeof(CUserMessageCameraTransition::_impl_.duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageCameraTransition, _impl_.params_data_driven_)>(
          reinterpret_cast<char*>(&_impl_.params_data_driven_),
          reinterpret_cast<char*>(&other->_impl_.params_data_driven_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageCameraTransition::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[36]);
}

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

class CUserMsg_ParticleManager_ReleaseParticleIndex::_Internal {
 public:
};

CUserMsg_ParticleManager_ReleaseParticleIndex::CUserMsg_ParticleManager_ReleaseParticleIndex(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMsg_ParticleManager.ReleaseParticleIndex)
}
CUserMsg_ParticleManager_ReleaseParticleIndex::CUserMsg_ParticleManager_ReleaseParticleIndex(const CUserMsg_ParticleManager_ReleaseParticleIndex& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMsg_ParticleManager_ReleaseParticleIndex* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.ReleaseParticleIndex)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_ParticleManager_ReleaseParticleIndex::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_ReleaseParticleIndex::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ReleaseParticleIndex::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[37]);
}

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

class CUserMsg_ParticleManager_CreateParticle::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_CreateParticle>()._impl_._has_bits_);
  static void set_has_particle_name_index(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_attach_type(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_entity_handle(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_entity_handle_for_modifiers(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_apply_voice_ban_rules(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_team_behavior(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_control_point_configuration(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_cluster(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_endcap_time(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static const ::CMsgVector& aggregation_position(const CUserMsg_ParticleManager_CreateParticle* msg);
  static void set_has_aggregation_position(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_CreateParticle::_Internal::aggregation_position(const CUserMsg_ParticleManager_CreateParticle* msg) {
  return *msg->_impl_.aggregation_position_;
}
void CUserMsg_ParticleManager_CreateParticle::clear_aggregation_position() {
  if (_impl_.aggregation_position_ != nullptr) _impl_.aggregation_position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMsg_ParticleManager_CreateParticle::CUserMsg_ParticleManager_CreateParticle(::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:CUserMsg_ParticleManager.CreateParticle)
}
CUserMsg_ParticleManager_CreateParticle::CUserMsg_ParticleManager_CreateParticle(const CUserMsg_ParticleManager_CreateParticle& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_CreateParticle* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.control_point_configuration_){}
    , decltype(_impl_.aggregation_position_){nullptr}
    , decltype(_impl_.particle_name_index_){}
    , decltype(_impl_.attach_type_){}
    , decltype(_impl_.team_behavior_){}
    , decltype(_impl_.apply_voice_ban_rules_){}
    , decltype(_impl_.cluster_){}
    , decltype(_impl_.endcap_time_){}
    , decltype(_impl_.entity_handle_){}
    , decltype(_impl_.entity_handle_for_modifiers_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.control_point_configuration_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.control_point_configuration_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_control_point_configuration()) {
    _this->_impl_.control_point_configuration_.Set(from._internal_control_point_configuration(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_aggregation_position()) {
    _this->_impl_.aggregation_position_ = new ::CMsgVector(*from._impl_.aggregation_position_);
  }
  ::memcpy(&_impl_.particle_name_index_, &from._impl_.particle_name_index_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.entity_handle_for_modifiers_) -
    reinterpret_cast<char*>(&_impl_.particle_name_index_)) + sizeof(_impl_.entity_handle_for_modifiers_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.CreateParticle)
}

inline void CUserMsg_ParticleManager_CreateParticle::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_.control_point_configuration_){}
    , decltype(_impl_.aggregation_position_){nullptr}
    , decltype(_impl_.particle_name_index_){uint64_t{0u}}
    , decltype(_impl_.attach_type_){0}
    , decltype(_impl_.team_behavior_){0}
    , decltype(_impl_.apply_voice_ban_rules_){false}
    , decltype(_impl_.cluster_){false}
    , decltype(_impl_.endcap_time_){0}
    , decltype(_impl_.entity_handle_){16777215u}
    , decltype(_impl_.entity_handle_for_modifiers_){16777215u}
  };
  _impl_.control_point_configuration_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.control_point_configuration_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_CreateParticle::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.control_point_configuration_.Destroy();
  if (this != internal_default_instance()) delete _impl_.aggregation_position_;
}

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

void CUserMsg_ParticleManager_CreateParticle::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.CreateParticle)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.control_point_configuration_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.aggregation_position_ != nullptr);
      _impl_.aggregation_position_->Clear();
    }
  }
  if (cached_has_bits & 0x000000fcu) {
    ::memset(&_impl_.particle_name_index_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.endcap_time_) -
        reinterpret_cast<char*>(&_impl_.particle_name_index_)) + sizeof(_impl_.endcap_time_));
  }
  if (cached_has_bits & 0x00000300u) {
    _impl_.entity_handle_ = 16777215u;
    _impl_.entity_handle_for_modifiers_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_CreateParticle::_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 fixed64 particle_name_index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 9)) {
          _Internal::set_has_particle_name_index(&has_bits);
          _impl_.particle_name_index_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional int32 attach_type = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_attach_type(&has_bits);
          _impl_.attach_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 3 [default = 16777215];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle_for_modifiers = 4 [default = 16777215];
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_entity_handle_for_modifiers(&has_bits);
          _impl_.entity_handle_for_modifiers_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool apply_voice_ban_rules = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_apply_voice_ban_rules(&has_bits);
          _impl_.apply_voice_ban_rules_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 team_behavior = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_team_behavior(&has_bits);
          _impl_.team_behavior_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string control_point_configuration = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          auto str = _internal_mutable_control_point_configuration();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.CreateParticle.control_point_configuration");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool cluster = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_cluster(&has_bits);
          _impl_.cluster_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float endcap_time = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 77)) {
          _Internal::set_has_endcap_time(&has_bits);
          _impl_.endcap_time_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector aggregation_position = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_aggregation_position(), 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* CUserMsg_ParticleManager_CreateParticle::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.CreateParticle)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed64 particle_name_index = 1;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(1, this->_internal_particle_name_index(), target);
  }

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

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

  // optional uint32 entity_handle_for_modifiers = 4 [default = 16777215];
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_entity_handle_for_modifiers(), target);
  }

  // optional bool apply_voice_ban_rules = 5;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_apply_voice_ban_rules(), target);
  }

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

  // optional string control_point_configuration = 7;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_control_point_configuration().data(), static_cast<int>(this->_internal_control_point_configuration().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.CreateParticle.control_point_configuration");
    target = stream->WriteStringMaybeAliased(
        7, this->_internal_control_point_configuration(), target);
  }

  // optional bool cluster = 8;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(8, this->_internal_cluster(), target);
  }

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

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

  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:CUserMsg_ParticleManager.CreateParticle)
  return target;
}

size_t CUserMsg_ParticleManager_CreateParticle::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.CreateParticle)
  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 string control_point_configuration = 7;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_control_point_configuration());
    }

    // optional .CMsgVector aggregation_position = 10;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.aggregation_position_);
    }

    // optional fixed64 particle_name_index = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 8;
    }

    // optional int32 attach_type = 2;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attach_type());
    }

    // optional int32 team_behavior = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_team_behavior());
    }

    // optional bool apply_voice_ban_rules = 5;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 1;
    }

    // optional bool cluster = 8;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 + 1;
    }

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

  }
  if (cached_has_bits & 0x00000300u) {
    // optional uint32 entity_handle = 3 [default = 16777215];
    if (cached_has_bits & 0x00000100u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_entity_handle());
    }

    // optional uint32 entity_handle_for_modifiers = 4 [default = 16777215];
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_entity_handle_for_modifiers());
    }

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

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


void CUserMsg_ParticleManager_CreateParticle::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_CreateParticle*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_CreateParticle&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.CreateParticle)
  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_set_control_point_configuration(from._internal_control_point_configuration());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_aggregation_position()->::CMsgVector::MergeFrom(
          from._internal_aggregation_position());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.particle_name_index_ = from._impl_.particle_name_index_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.attach_type_ = from._impl_.attach_type_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.team_behavior_ = from._impl_.team_behavior_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.apply_voice_ban_rules_ = from._impl_.apply_voice_ban_rules_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.cluster_ = from._impl_.cluster_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.endcap_time_ = from._impl_.endcap_time_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00000300u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.entity_handle_for_modifiers_ = from._impl_.entity_handle_for_modifiers_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_CreateParticle::InternalSwap(CUserMsg_ParticleManager_CreateParticle* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.control_point_configuration_, lhs_arena,
      &other->_impl_.control_point_configuration_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_CreateParticle, _impl_.endcap_time_)
      + sizeof(CUserMsg_ParticleManager_CreateParticle::_impl_.endcap_time_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_CreateParticle, _impl_.aggregation_position_)>(
          reinterpret_cast<char*>(&_impl_.aggregation_position_),
          reinterpret_cast<char*>(&other->_impl_.aggregation_position_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
  swap(_impl_.entity_handle_for_modifiers_, other->_impl_.entity_handle_for_modifiers_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_CreateParticle::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[38]);
}

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

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

CUserMsg_ParticleManager_DestroyParticle::CUserMsg_ParticleManager_DestroyParticle(::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:CUserMsg_ParticleManager.DestroyParticle)
}
CUserMsg_ParticleManager_DestroyParticle::CUserMsg_ParticleManager_DestroyParticle(const CUserMsg_ParticleManager_DestroyParticle& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_DestroyParticle* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.destroy_immediately_){}};

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

inline void CUserMsg_ParticleManager_DestroyParticle::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_.destroy_immediately_){false}
  };
}

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

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

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

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

  _impl_.destroy_immediately_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_DestroyParticle::_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 bool destroy_immediately = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_destroy_immediately(&has_bits);
          _impl_.destroy_immediately_ = ::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* CUserMsg_ParticleManager_DestroyParticle::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.DestroyParticle)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool destroy_immediately = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_destroy_immediately(), 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:CUserMsg_ParticleManager.DestroyParticle)
  return target;
}

size_t CUserMsg_ParticleManager_DestroyParticle::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.DestroyParticle)
  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 bool destroy_immediately = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_destroy_immediately()) {
    _this->_internal_set_destroy_immediately(from._internal_destroy_immediately());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_DestroyParticle::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[39]);
}

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

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

CUserMsg_ParticleManager_DestroyParticleInvolving::CUserMsg_ParticleManager_DestroyParticleInvolving(::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:CUserMsg_ParticleManager.DestroyParticleInvolving)
}
CUserMsg_ParticleManager_DestroyParticleInvolving::CUserMsg_ParticleManager_DestroyParticleInvolving(const CUserMsg_ParticleManager_DestroyParticleInvolving& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_DestroyParticleInvolving* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.destroy_immediately_){}
    , decltype(_impl_.entity_handle_){}};

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

inline void CUserMsg_ParticleManager_DestroyParticleInvolving::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_.destroy_immediately_){false}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_DestroyParticleInvolving::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.DestroyParticleInvolving)
  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 & 0x00000003u) {
    _impl_.destroy_immediately_ = false;
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_DestroyParticleInvolving::_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 bool destroy_immediately = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_destroy_immediately(&has_bits);
          _impl_.destroy_immediately_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 3 [default = 16777215];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::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* CUserMsg_ParticleManager_DestroyParticleInvolving::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.DestroyParticleInvolving)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool destroy_immediately = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_destroy_immediately(), target);
  }

  // optional uint32 entity_handle = 3 [default = 16777215];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_entity_handle(), 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:CUserMsg_ParticleManager.DestroyParticleInvolving)
  return target;
}

size_t CUserMsg_ParticleManager_DestroyParticleInvolving::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.DestroyParticleInvolving)
  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 & 0x00000003u) {
    // optional bool destroy_immediately = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 1;
    }

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

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

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


void CUserMsg_ParticleManager_DestroyParticleInvolving::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_DestroyParticleInvolving*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_DestroyParticleInvolving&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.DestroyParticleInvolving)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.destroy_immediately_ = from._impl_.destroy_immediately_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_DestroyParticleInvolving::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[40]);
}

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

class CUserMsg_ParticleManager_DestroyParticleNamed::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_DestroyParticleNamed>()._impl_._has_bits_);
  static void set_has_particle_name_index(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_entity_handle(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_destroy_immediately(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_play_endcap(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

CUserMsg_ParticleManager_DestroyParticleNamed::CUserMsg_ParticleManager_DestroyParticleNamed(::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:CUserMsg_ParticleManager.DestroyParticleNamed)
}
CUserMsg_ParticleManager_DestroyParticleNamed::CUserMsg_ParticleManager_DestroyParticleNamed(const CUserMsg_ParticleManager_DestroyParticleNamed& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_DestroyParticleNamed* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.particle_name_index_){}
    , decltype(_impl_.destroy_immediately_){}
    , decltype(_impl_.play_endcap_){}
    , decltype(_impl_.entity_handle_){}};

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

inline void CUserMsg_ParticleManager_DestroyParticleNamed::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_.particle_name_index_){uint64_t{0u}}
    , decltype(_impl_.destroy_immediately_){false}
    , decltype(_impl_.play_endcap_){false}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_DestroyParticleNamed::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.DestroyParticleNamed)
  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) {
    ::memset(&_impl_.particle_name_index_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.play_endcap_) -
        reinterpret_cast<char*>(&_impl_.particle_name_index_)) + sizeof(_impl_.play_endcap_));
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_DestroyParticleNamed::_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 fixed64 particle_name_index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 9)) {
          _Internal::set_has_particle_name_index(&has_bits);
          _impl_.particle_name_index_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint64_t>(ptr);
          ptr += sizeof(uint64_t);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 2 [default = 16777215];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool destroy_immediately = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_destroy_immediately(&has_bits);
          _impl_.destroy_immediately_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool play_endcap = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_play_endcap(&has_bits);
          _impl_.play_endcap_ = ::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* CUserMsg_ParticleManager_DestroyParticleNamed::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.DestroyParticleNamed)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed64 particle_name_index = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(1, this->_internal_particle_name_index(), target);
  }

  // optional uint32 entity_handle = 2 [default = 16777215];
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_entity_handle(), target);
  }

  // optional bool destroy_immediately = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_destroy_immediately(), target);
  }

  // optional bool play_endcap = 4;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_play_endcap(), 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:CUserMsg_ParticleManager.DestroyParticleNamed)
  return target;
}

size_t CUserMsg_ParticleManager_DestroyParticleNamed::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.DestroyParticleNamed)
  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 & 0x0000000fu) {
    // optional fixed64 particle_name_index = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 8;
    }

    // optional bool destroy_immediately = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

    // optional bool play_endcap = 4;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

    // optional uint32 entity_handle = 2 [default = 16777215];
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_entity_handle());
    }

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

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


void CUserMsg_ParticleManager_DestroyParticleNamed::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_DestroyParticleNamed*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_DestroyParticleNamed&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.DestroyParticleNamed)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.particle_name_index_ = from._impl_.particle_name_index_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.destroy_immediately_ = from._impl_.destroy_immediately_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.play_endcap_ = from._impl_.play_endcap_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_DestroyParticleNamed::InternalSwap(CUserMsg_ParticleManager_DestroyParticleNamed* 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(CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.play_endcap_)
      + sizeof(CUserMsg_ParticleManager_DestroyParticleNamed::_impl_.play_endcap_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_DestroyParticleNamed, _impl_.particle_name_index_)>(
          reinterpret_cast<char*>(&_impl_.particle_name_index_),
          reinterpret_cast<char*>(&other->_impl_.particle_name_index_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_DestroyParticleNamed::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[41]);
}

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

class CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticle_OBSOLETE>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& position(const CUserMsg_ParticleManager_UpdateParticle_OBSOLETE* msg);
  static void set_has_position(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::_Internal::position(const CUserMsg_ParticleManager_UpdateParticle_OBSOLETE* msg) {
  return *msg->_impl_.position_;
}
void CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::clear_position() {
  if (_impl_.position_ != nullptr) _impl_.position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE(::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:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
}
CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE(const CUserMsg_ParticleManager_UpdateParticle_OBSOLETE& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticle_OBSOLETE* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.position_){nullptr}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_position()) {
    _this->_impl_.position_ = new ::CMsgVector(*from._impl_.position_);
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
}

inline void CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::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_.position_){nullptr}
    , decltype(_impl_.control_point_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
  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_.position_ != nullptr);
    _impl_.position_->Clear();
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector position = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_position(), 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* CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  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:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
  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 & 0x00000003u) {
    // optional .CMsgVector position = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.position_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticle_OBSOLETE*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticle_OBSOLETE&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticle_OBSOLETE)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_position()->::CMsgVector::MergeFrom(
          from._internal_position());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::InternalSwap(CUserMsg_ParticleManager_UpdateParticle_OBSOLETE* 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(CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _impl_.control_point_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::_impl_.control_point_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticle_OBSOLETE, _impl_.position_)>(
          reinterpret_cast<char*>(&_impl_.position_),
          reinterpret_cast<char*>(&other->_impl_.position_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[42]);
}

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

class CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& forward(const CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE* msg);
  static void set_has_forward(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::_Internal::forward(const CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE* msg) {
  return *msg->_impl_.forward_;
}
void CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::clear_forward() {
  if (_impl_.forward_ != nullptr) _impl_.forward_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE(::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:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
}
CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE(const CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.forward_){nullptr}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_forward()) {
    _this->_impl_.forward_ = new ::CMsgVector(*from._impl_.forward_);
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
}

inline void CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::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_.forward_){nullptr}
    , decltype(_impl_.control_point_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
  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_.forward_ != nullptr);
    _impl_.forward_->Clear();
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector forward = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_forward(), 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* CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  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:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
  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 & 0x00000003u) {
    // optional .CMsgVector forward = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.forward_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_forward()->::CMsgVector::MergeFrom(
          from._internal_forward());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::InternalSwap(CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE* 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(CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _impl_.control_point_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::_impl_.control_point_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE, _impl_.forward_)>(
          reinterpret_cast<char*>(&_impl_.forward_),
          reinterpret_cast<char*>(&other->_impl_.forward_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[43]);
}

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

class CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static const ::CMsgVector& forward(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg);
  static void set_has_forward(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgVector& deprecated_right(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg);
  static void set_has_deprecated_right(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& up(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg);
  static void set_has_up(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgVector& left(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg);
  static void set_has_left(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_Internal::forward(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg) {
  return *msg->_impl_.forward_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_Internal::deprecated_right(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg) {
  return *msg->_impl_.deprecated_right_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_Internal::up(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg) {
  return *msg->_impl_.up_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_Internal::left(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* msg) {
  return *msg->_impl_.left_;
}
void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::clear_forward() {
  if (_impl_.forward_ != nullptr) _impl_.forward_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::clear_deprecated_right() {
  if (_impl_.deprecated_right_ != nullptr) _impl_.deprecated_right_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::clear_up() {
  if (_impl_.up_ != nullptr) _impl_.up_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::clear_left() {
  if (_impl_.left_ != nullptr) _impl_.left_->Clear();
  _impl_._has_bits_[0] &= ~0x00000008u;
}
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE(::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:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
}
CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE(const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.forward_){nullptr}
    , decltype(_impl_.deprecated_right_){nullptr}
    , decltype(_impl_.up_){nullptr}
    , decltype(_impl_.left_){nullptr}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_forward()) {
    _this->_impl_.forward_ = new ::CMsgVector(*from._impl_.forward_);
  }
  if (from._internal_has_deprecated_right()) {
    _this->_impl_.deprecated_right_ = new ::CMsgVector(*from._impl_.deprecated_right_);
  }
  if (from._internal_has_up()) {
    _this->_impl_.up_ = new ::CMsgVector(*from._impl_.up_);
  }
  if (from._internal_has_left()) {
    _this->_impl_.left_ = new ::CMsgVector(*from._impl_.left_);
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
}

inline void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::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_.forward_){nullptr}
    , decltype(_impl_.deprecated_right_){nullptr}
    , decltype(_impl_.up_){nullptr}
    , decltype(_impl_.left_){nullptr}
    , decltype(_impl_.control_point_){0}
  };
}

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

inline void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.forward_;
  if (this != internal_default_instance()) delete _impl_.deprecated_right_;
  if (this != internal_default_instance()) delete _impl_.up_;
  if (this != internal_default_instance()) delete _impl_.left_;
}

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

void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
  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_.forward_ != nullptr);
      _impl_.forward_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.deprecated_right_ != nullptr);
      _impl_.deprecated_right_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.up_ != nullptr);
      _impl_.up_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.left_ != nullptr);
      _impl_.left_->Clear();
    }
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector forward = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_forward(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector deprecated_right = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_deprecated_right(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector up = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_up(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector left = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_left(), 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* CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

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

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

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

  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:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
  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 & 0x0000001fu) {
    // optional .CMsgVector forward = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.forward_);
    }

    // optional .CMsgVector deprecated_right = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.deprecated_right_);
    }

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

    // optional .CMsgVector left = 5;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.left_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE)
  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 & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_forward()->::CMsgVector::MergeFrom(
          from._internal_forward());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_deprecated_right()->::CMsgVector::MergeFrom(
          from._internal_deprecated_right());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_up()->::CMsgVector::MergeFrom(
          from._internal_up());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_left()->::CMsgVector::MergeFrom(
          from._internal_left());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::InternalSwap(CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE* 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(CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.control_point_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::_impl_.control_point_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE, _impl_.forward_)>(
          reinterpret_cast<char*>(&_impl_.forward_),
          reinterpret_cast<char*>(&other->_impl_.forward_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[44]);
}

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

class CUserMsg_ParticleManager_UpdateParticleTransform::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleTransform>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgVector& position(const CUserMsg_ParticleManager_UpdateParticleTransform* msg);
  static void set_has_position(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgQuaternion& orientation(const CUserMsg_ParticleManager_UpdateParticleTransform* msg);
  static void set_has_orientation(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_interpolation_interval(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleTransform::_Internal::position(const CUserMsg_ParticleManager_UpdateParticleTransform* msg) {
  return *msg->_impl_.position_;
}
const ::CMsgQuaternion&
CUserMsg_ParticleManager_UpdateParticleTransform::_Internal::orientation(const CUserMsg_ParticleManager_UpdateParticleTransform* msg) {
  return *msg->_impl_.orientation_;
}
void CUserMsg_ParticleManager_UpdateParticleTransform::clear_position() {
  if (_impl_.position_ != nullptr) _impl_.position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_UpdateParticleTransform::clear_orientation() {
  if (_impl_.orientation_ != nullptr) _impl_.orientation_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMsg_ParticleManager_UpdateParticleTransform::CUserMsg_ParticleManager_UpdateParticleTransform(::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:CUserMsg_ParticleManager.UpdateParticleTransform)
}
CUserMsg_ParticleManager_UpdateParticleTransform::CUserMsg_ParticleManager_UpdateParticleTransform(const CUserMsg_ParticleManager_UpdateParticleTransform& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleTransform* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.position_){nullptr}
    , decltype(_impl_.orientation_){nullptr}
    , decltype(_impl_.control_point_){}
    , decltype(_impl_.interpolation_interval_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_position()) {
    _this->_impl_.position_ = new ::CMsgVector(*from._impl_.position_);
  }
  if (from._internal_has_orientation()) {
    _this->_impl_.orientation_ = new ::CMsgQuaternion(*from._impl_.orientation_);
  }
  ::memcpy(&_impl_.control_point_, &from._impl_.control_point_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.interpolation_interval_) -
    reinterpret_cast<char*>(&_impl_.control_point_)) + sizeof(_impl_.interpolation_interval_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleTransform)
}

inline void CUserMsg_ParticleManager_UpdateParticleTransform::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_.position_){nullptr}
    , decltype(_impl_.orientation_){nullptr}
    , decltype(_impl_.control_point_){0}
    , decltype(_impl_.interpolation_interval_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticleTransform::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleTransform)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.position_ != nullptr);
      _impl_.position_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.orientation_ != nullptr);
      _impl_.orientation_->Clear();
    }
  }
  if (cached_has_bits & 0x0000000cu) {
    ::memset(&_impl_.control_point_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.interpolation_interval_) -
        reinterpret_cast<char*>(&_impl_.control_point_)) + sizeof(_impl_.interpolation_interval_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleTransform::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector position = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_position(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgQuaternion orientation = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_orientation(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float interpolation_interval = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_interpolation_interval(&has_bits);
          _impl_.interpolation_interval_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_UpdateParticleTransform::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleTransform)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

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

  // optional float interpolation_interval = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_interpolation_interval(), 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:CUserMsg_ParticleManager.UpdateParticleTransform)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleTransform::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleTransform)
  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 & 0x0000000fu) {
    // optional .CMsgVector position = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.position_);
    }

    // optional .CMsgQuaternion orientation = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.orientation_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

    // optional float interpolation_interval = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleTransform::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleTransform*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleTransform&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleTransform)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_position()->::CMsgVector::MergeFrom(
          from._internal_position());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_orientation()->::CMsgQuaternion::MergeFrom(
          from._internal_orientation());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.interpolation_interval_ = from._impl_.interpolation_interval_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleTransform::InternalSwap(CUserMsg_ParticleManager_UpdateParticleTransform* 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(CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.interpolation_interval_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleTransform::_impl_.interpolation_interval_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleTransform, _impl_.position_)>(
          reinterpret_cast<char*>(&_impl_.position_),
          reinterpret_cast<char*>(&other->_impl_.position_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleTransform::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[45]);
}

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

class CUserMsg_ParticleManager_UpdateParticleFallback::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleFallback>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& position(const CUserMsg_ParticleManager_UpdateParticleFallback* msg);
  static void set_has_position(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleFallback::_Internal::position(const CUserMsg_ParticleManager_UpdateParticleFallback* msg) {
  return *msg->_impl_.position_;
}
void CUserMsg_ParticleManager_UpdateParticleFallback::clear_position() {
  if (_impl_.position_ != nullptr) _impl_.position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_UpdateParticleFallback::CUserMsg_ParticleManager_UpdateParticleFallback(::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:CUserMsg_ParticleManager.UpdateParticleFallback)
}
CUserMsg_ParticleManager_UpdateParticleFallback::CUserMsg_ParticleManager_UpdateParticleFallback(const CUserMsg_ParticleManager_UpdateParticleFallback& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleFallback* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.position_){nullptr}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_position()) {
    _this->_impl_.position_ = new ::CMsgVector(*from._impl_.position_);
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleFallback)
}

inline void CUserMsg_ParticleManager_UpdateParticleFallback::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_.position_){nullptr}
    , decltype(_impl_.control_point_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticleFallback::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleFallback)
  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_.position_ != nullptr);
    _impl_.position_->Clear();
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleFallback::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector position = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_position(), 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* CUserMsg_ParticleManager_UpdateParticleFallback::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleFallback)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  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:CUserMsg_ParticleManager.UpdateParticleFallback)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleFallback::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleFallback)
  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 & 0x00000003u) {
    // optional .CMsgVector position = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.position_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleFallback::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleFallback*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleFallback&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleFallback)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_position()->::CMsgVector::MergeFrom(
          from._internal_position());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleFallback::InternalSwap(CUserMsg_ParticleManager_UpdateParticleFallback* 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(CUserMsg_ParticleManager_UpdateParticleFallback, _impl_.control_point_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleFallback::_impl_.control_point_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleFallback, _impl_.position_)>(
          reinterpret_cast<char*>(&_impl_.position_),
          reinterpret_cast<char*>(&other->_impl_.position_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleFallback::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[46]);
}

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

class CUserMsg_ParticleManager_UpdateParticleOffset::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleOffset>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgVector& origin_offset(const CUserMsg_ParticleManager_UpdateParticleOffset* msg);
  static void set_has_origin_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgQAngle& angle_offset(const CUserMsg_ParticleManager_UpdateParticleOffset* msg);
  static void set_has_angle_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleOffset::_Internal::origin_offset(const CUserMsg_ParticleManager_UpdateParticleOffset* msg) {
  return *msg->_impl_.origin_offset_;
}
const ::CMsgQAngle&
CUserMsg_ParticleManager_UpdateParticleOffset::_Internal::angle_offset(const CUserMsg_ParticleManager_UpdateParticleOffset* msg) {
  return *msg->_impl_.angle_offset_;
}
void CUserMsg_ParticleManager_UpdateParticleOffset::clear_origin_offset() {
  if (_impl_.origin_offset_ != nullptr) _impl_.origin_offset_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_UpdateParticleOffset::clear_angle_offset() {
  if (_impl_.angle_offset_ != nullptr) _impl_.angle_offset_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMsg_ParticleManager_UpdateParticleOffset::CUserMsg_ParticleManager_UpdateParticleOffset(::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:CUserMsg_ParticleManager.UpdateParticleOffset)
}
CUserMsg_ParticleManager_UpdateParticleOffset::CUserMsg_ParticleManager_UpdateParticleOffset(const CUserMsg_ParticleManager_UpdateParticleOffset& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleOffset* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.origin_offset_){nullptr}
    , decltype(_impl_.angle_offset_){nullptr}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_origin_offset()) {
    _this->_impl_.origin_offset_ = new ::CMsgVector(*from._impl_.origin_offset_);
  }
  if (from._internal_has_angle_offset()) {
    _this->_impl_.angle_offset_ = new ::CMsgQAngle(*from._impl_.angle_offset_);
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleOffset)
}

inline void CUserMsg_ParticleManager_UpdateParticleOffset::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_offset_){nullptr}
    , decltype(_impl_.angle_offset_){nullptr}
    , decltype(_impl_.control_point_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticleOffset::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleOffset)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.origin_offset_ != nullptr);
      _impl_.origin_offset_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.angle_offset_ != nullptr);
      _impl_.angle_offset_->Clear();
    }
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleOffset::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector origin_offset = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_origin_offset(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgQAngle angle_offset = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_angle_offset(), 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* CUserMsg_ParticleManager_UpdateParticleOffset::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleOffset)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

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

  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:CUserMsg_ParticleManager.UpdateParticleOffset)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleOffset::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleOffset)
  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 .CMsgVector origin_offset = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.origin_offset_);
    }

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

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleOffset::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleOffset*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleOffset&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleOffset)
  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->_internal_mutable_origin_offset()->::CMsgVector::MergeFrom(
          from._internal_origin_offset());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_angle_offset()->::CMsgQAngle::MergeFrom(
          from._internal_angle_offset());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleOffset::InternalSwap(CUserMsg_ParticleManager_UpdateParticleOffset* 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(CUserMsg_ParticleManager_UpdateParticleOffset, _impl_.control_point_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleOffset::_impl_.control_point_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleOffset, _impl_.origin_offset_)>(
          reinterpret_cast<char*>(&_impl_.origin_offset_),
          reinterpret_cast<char*>(&other->_impl_.origin_offset_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleOffset::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[47]);
}

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

class CUserMsg_ParticleManager_UpdateParticleEnt::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateParticleEnt>()._impl_._has_bits_);
  static void set_has_control_point(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_entity_handle(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_attach_type(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_attachment(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static const ::CMsgVector& fallback_position(const CUserMsg_ParticleManager_UpdateParticleEnt* msg);
  static void set_has_fallback_position(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_include_wearables(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static const ::CMsgVector& offset_position(const CUserMsg_ParticleManager_UpdateParticleEnt* msg);
  static void set_has_offset_position(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgQAngle& offset_angles(const CUserMsg_ParticleManager_UpdateParticleEnt* msg);
  static void set_has_offset_angles(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleEnt::_Internal::fallback_position(const CUserMsg_ParticleManager_UpdateParticleEnt* msg) {
  return *msg->_impl_.fallback_position_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateParticleEnt::_Internal::offset_position(const CUserMsg_ParticleManager_UpdateParticleEnt* msg) {
  return *msg->_impl_.offset_position_;
}
const ::CMsgQAngle&
CUserMsg_ParticleManager_UpdateParticleEnt::_Internal::offset_angles(const CUserMsg_ParticleManager_UpdateParticleEnt* msg) {
  return *msg->_impl_.offset_angles_;
}
void CUserMsg_ParticleManager_UpdateParticleEnt::clear_fallback_position() {
  if (_impl_.fallback_position_ != nullptr) _impl_.fallback_position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_UpdateParticleEnt::clear_offset_position() {
  if (_impl_.offset_position_ != nullptr) _impl_.offset_position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
void CUserMsg_ParticleManager_UpdateParticleEnt::clear_offset_angles() {
  if (_impl_.offset_angles_ != nullptr) _impl_.offset_angles_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
CUserMsg_ParticleManager_UpdateParticleEnt::CUserMsg_ParticleManager_UpdateParticleEnt(::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:CUserMsg_ParticleManager.UpdateParticleEnt)
}
CUserMsg_ParticleManager_UpdateParticleEnt::CUserMsg_ParticleManager_UpdateParticleEnt(const CUserMsg_ParticleManager_UpdateParticleEnt& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleEnt* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.fallback_position_){nullptr}
    , decltype(_impl_.offset_position_){nullptr}
    , decltype(_impl_.offset_angles_){nullptr}
    , decltype(_impl_.control_point_){}
    , decltype(_impl_.attach_type_){}
    , decltype(_impl_.attachment_){}
    , decltype(_impl_.include_wearables_){}
    , decltype(_impl_.entity_handle_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_fallback_position()) {
    _this->_impl_.fallback_position_ = new ::CMsgVector(*from._impl_.fallback_position_);
  }
  if (from._internal_has_offset_position()) {
    _this->_impl_.offset_position_ = new ::CMsgVector(*from._impl_.offset_position_);
  }
  if (from._internal_has_offset_angles()) {
    _this->_impl_.offset_angles_ = new ::CMsgQAngle(*from._impl_.offset_angles_);
  }
  ::memcpy(&_impl_.control_point_, &from._impl_.control_point_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.entity_handle_) -
    reinterpret_cast<char*>(&_impl_.control_point_)) + sizeof(_impl_.entity_handle_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateParticleEnt)
}

inline void CUserMsg_ParticleManager_UpdateParticleEnt::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_.fallback_position_){nullptr}
    , decltype(_impl_.offset_position_){nullptr}
    , decltype(_impl_.offset_angles_){nullptr}
    , decltype(_impl_.control_point_){0}
    , decltype(_impl_.attach_type_){0}
    , decltype(_impl_.attachment_){0}
    , decltype(_impl_.include_wearables_){false}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

inline void CUserMsg_ParticleManager_UpdateParticleEnt::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.fallback_position_;
  if (this != internal_default_instance()) delete _impl_.offset_position_;
  if (this != internal_default_instance()) delete _impl_.offset_angles_;
}

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

void CUserMsg_ParticleManager_UpdateParticleEnt::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleEnt)
  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) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.fallback_position_ != nullptr);
      _impl_.fallback_position_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.offset_position_ != nullptr);
      _impl_.offset_position_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.offset_angles_ != nullptr);
      _impl_.offset_angles_->Clear();
    }
  }
  if (cached_has_bits & 0x000000f8u) {
    ::memset(&_impl_.control_point_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.include_wearables_) -
        reinterpret_cast<char*>(&_impl_.control_point_)) + sizeof(_impl_.include_wearables_));
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleEnt::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 2 [default = 16777215];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 attach_type = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_attach_type(&has_bits);
          _impl_.attach_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 attachment = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_attachment(&has_bits);
          _impl_.attachment_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fallback_position = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_fallback_position(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool include_wearables = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_include_wearables(&has_bits);
          _impl_.include_wearables_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector offset_position = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_offset_position(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgQAngle offset_angles = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_offset_angles(), 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* CUserMsg_ParticleManager_UpdateParticleEnt::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleEnt)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional uint32 entity_handle = 2 [default = 16777215];
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_entity_handle(), target);
  }

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

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

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

  // optional bool include_wearables = 6;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_include_wearables(), target);
  }

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

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

  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:CUserMsg_ParticleManager.UpdateParticleEnt)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleEnt::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleEnt)
  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 fallback_position = 5;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fallback_position_);
    }

    // optional .CMsgVector offset_position = 7;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.offset_position_);
    }

    // optional .CMsgQAngle offset_angles = 8;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.offset_angles_);
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

    // optional int32 attach_type = 3;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attach_type());
    }

    // optional int32 attachment = 4;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attachment());
    }

    // optional bool include_wearables = 6;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 + 1;
    }

    // optional uint32 entity_handle = 2 [default = 16777215];
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_entity_handle());
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleEnt::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleEnt*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleEnt&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleEnt)
  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_fallback_position()->::CMsgVector::MergeFrom(
          from._internal_fallback_position());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_offset_position()->::CMsgVector::MergeFrom(
          from._internal_offset_position());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_offset_angles()->::CMsgQAngle::MergeFrom(
          from._internal_offset_angles());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.attach_type_ = from._impl_.attach_type_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.attachment_ = from._impl_.attachment_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.include_wearables_ = from._impl_.include_wearables_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleEnt::InternalSwap(CUserMsg_ParticleManager_UpdateParticleEnt* 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(CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.include_wearables_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleEnt::_impl_.include_wearables_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleEnt, _impl_.fallback_position_)>(
          reinterpret_cast<char*>(&_impl_.fallback_position_),
          reinterpret_cast<char*>(&other->_impl_.fallback_position_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleEnt::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[48]);
}

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

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

CUserMsg_ParticleManager_UpdateParticleSetFrozen::CUserMsg_ParticleManager_UpdateParticleSetFrozen(::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:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
}
CUserMsg_ParticleManager_UpdateParticleSetFrozen::CUserMsg_ParticleManager_UpdateParticleSetFrozen(const CUserMsg_ParticleManager_UpdateParticleSetFrozen& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleSetFrozen* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.set_frozen_){}
    , decltype(_impl_.transition_duration_){}};

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

inline void CUserMsg_ParticleManager_UpdateParticleSetFrozen::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_.set_frozen_){false}
    , decltype(_impl_.transition_duration_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateParticleSetFrozen::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
  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 & 0x00000003u) {
    ::memset(&_impl_.set_frozen_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.transition_duration_) -
        reinterpret_cast<char*>(&_impl_.set_frozen_)) + sizeof(_impl_.transition_duration_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleSetFrozen::_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 bool set_frozen = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_set_frozen(&has_bits);
          _impl_.set_frozen_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float transition_duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_transition_duration(&has_bits);
          _impl_.transition_duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_UpdateParticleSetFrozen::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool set_frozen = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_set_frozen(), target);
  }

  // optional float transition_duration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_transition_duration(), 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:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleSetFrozen::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
  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 & 0x00000003u) {
    // optional bool set_frozen = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 1;
    }

    // optional float transition_duration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

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


void CUserMsg_ParticleManager_UpdateParticleSetFrozen::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateParticleSetFrozen*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateParticleSetFrozen&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateParticleSetFrozen)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.set_frozen_ = from._impl_.set_frozen_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.transition_duration_ = from._impl_.transition_duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_UpdateParticleSetFrozen::InternalSwap(CUserMsg_ParticleManager_UpdateParticleSetFrozen* 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(CUserMsg_ParticleManager_UpdateParticleSetFrozen, _impl_.transition_duration_)
      + sizeof(CUserMsg_ParticleManager_UpdateParticleSetFrozen::_impl_.transition_duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateParticleSetFrozen, _impl_.set_frozen_)>(
          reinterpret_cast<char*>(&_impl_.set_frozen_),
          reinterpret_cast<char*>(&other->_impl_.set_frozen_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleSetFrozen::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[49]);
}

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

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

CUserMsg_ParticleManager_UpdateParticleShouldDraw::CUserMsg_ParticleManager_UpdateParticleShouldDraw(::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:CUserMsg_ParticleManager.UpdateParticleShouldDraw)
}
CUserMsg_ParticleManager_UpdateParticleShouldDraw::CUserMsg_ParticleManager_UpdateParticleShouldDraw(const CUserMsg_ParticleManager_UpdateParticleShouldDraw& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateParticleShouldDraw* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.should_draw_){}};

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

inline void CUserMsg_ParticleManager_UpdateParticleShouldDraw::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_.should_draw_){false}
  };
}

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

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

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

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

  _impl_.should_draw_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateParticleShouldDraw::_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 bool should_draw = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_should_draw(&has_bits);
          _impl_.should_draw_ = ::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* CUserMsg_ParticleManager_UpdateParticleShouldDraw::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateParticleShouldDraw)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool should_draw = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_should_draw(), 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:CUserMsg_ParticleManager.UpdateParticleShouldDraw)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateParticleShouldDraw::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateParticleShouldDraw)
  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 bool should_draw = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_should_draw()) {
    _this->_internal_set_should_draw(from._internal_should_draw());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateParticleShouldDraw::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[50]);
}

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

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

CUserMsg_ParticleManager_ChangeControlPointAttachment::CUserMsg_ParticleManager_ChangeControlPointAttachment(::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:CUserMsg_ParticleManager.ChangeControlPointAttachment)
}
CUserMsg_ParticleManager_ChangeControlPointAttachment::CUserMsg_ParticleManager_ChangeControlPointAttachment(const CUserMsg_ParticleManager_ChangeControlPointAttachment& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_ChangeControlPointAttachment* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.attachment_old_){}
    , decltype(_impl_.attachment_new_){}
    , decltype(_impl_.entity_handle_){}};

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

inline void CUserMsg_ParticleManager_ChangeControlPointAttachment::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_.attachment_old_){0}
    , decltype(_impl_.attachment_new_){0}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_ChangeControlPointAttachment::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.ChangeControlPointAttachment)
  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_.attachment_old_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.attachment_new_) -
        reinterpret_cast<char*>(&_impl_.attachment_old_)) + sizeof(_impl_.attachment_new_));
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_ChangeControlPointAttachment::_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 attachment_old = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_attachment_old(&has_bits);
          _impl_.attachment_old_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 attachment_new = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_attachment_new(&has_bits);
          _impl_.attachment_new_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 3 [default = 16777215];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::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* CUserMsg_ParticleManager_ChangeControlPointAttachment::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.ChangeControlPointAttachment)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  // optional uint32 entity_handle = 3 [default = 16777215];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_entity_handle(), 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:CUserMsg_ParticleManager.ChangeControlPointAttachment)
  return target;
}

size_t CUserMsg_ParticleManager_ChangeControlPointAttachment::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.ChangeControlPointAttachment)
  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 int32 attachment_old = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_attachment_old());
    }

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

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

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

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


void CUserMsg_ParticleManager_ChangeControlPointAttachment::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_ChangeControlPointAttachment*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_ChangeControlPointAttachment&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.ChangeControlPointAttachment)
  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_.attachment_old_ = from._impl_.attachment_old_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.attachment_new_ = from._impl_.attachment_new_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_ChangeControlPointAttachment::InternalSwap(CUserMsg_ParticleManager_ChangeControlPointAttachment* 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(CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_.attachment_new_)
      + sizeof(CUserMsg_ParticleManager_ChangeControlPointAttachment::_impl_.attachment_new_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_ChangeControlPointAttachment, _impl_.attachment_old_)>(
          reinterpret_cast<char*>(&_impl_.attachment_old_),
          reinterpret_cast<char*>(&other->_impl_.attachment_old_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ChangeControlPointAttachment::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[51]);
}

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

class CUserMsg_ParticleManager_UpdateEntityPosition::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateEntityPosition>()._impl_._has_bits_);
  static void set_has_entity_handle(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& position(const CUserMsg_ParticleManager_UpdateEntityPosition* msg);
  static void set_has_position(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateEntityPosition::_Internal::position(const CUserMsg_ParticleManager_UpdateEntityPosition* msg) {
  return *msg->_impl_.position_;
}
void CUserMsg_ParticleManager_UpdateEntityPosition::clear_position() {
  if (_impl_.position_ != nullptr) _impl_.position_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_UpdateEntityPosition::CUserMsg_ParticleManager_UpdateEntityPosition(::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:CUserMsg_ParticleManager.UpdateEntityPosition)
}
CUserMsg_ParticleManager_UpdateEntityPosition::CUserMsg_ParticleManager_UpdateEntityPosition(const CUserMsg_ParticleManager_UpdateEntityPosition& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateEntityPosition* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.position_){nullptr}
    , decltype(_impl_.entity_handle_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_position()) {
    _this->_impl_.position_ = new ::CMsgVector(*from._impl_.position_);
  }
  _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateEntityPosition)
}

inline void CUserMsg_ParticleManager_UpdateEntityPosition::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_.position_){nullptr}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_UpdateEntityPosition::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateEntityPosition)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.position_ != nullptr);
      _impl_.position_->Clear();
    }
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateEntityPosition::_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 uint32 entity_handle = 1 [default = 16777215];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector position = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_position(), 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* CUserMsg_ParticleManager_UpdateEntityPosition::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateEntityPosition)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 entity_handle = 1 [default = 16777215];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_entity_handle(), target);
  }

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

  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:CUserMsg_ParticleManager.UpdateEntityPosition)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateEntityPosition::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateEntityPosition)
  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 & 0x00000003u) {
    // optional .CMsgVector position = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.position_);
    }

    // optional uint32 entity_handle = 1 [default = 16777215];
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_entity_handle());
    }

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

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


void CUserMsg_ParticleManager_UpdateEntityPosition::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateEntityPosition*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateEntityPosition&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateEntityPosition)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_position()->::CMsgVector::MergeFrom(
          from._internal_position());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateEntityPosition::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[52]);
}

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

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

CUserMsg_ParticleManager_SetParticleFoWProperties::CUserMsg_ParticleManager_SetParticleFoWProperties(::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:CUserMsg_ParticleManager.SetParticleFoWProperties)
}
CUserMsg_ParticleManager_SetParticleFoWProperties::CUserMsg_ParticleManager_SetParticleFoWProperties(const CUserMsg_ParticleManager_SetParticleFoWProperties& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleFoWProperties* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.fow_control_point_){}
    , decltype(_impl_.fow_control_point2_){}
    , decltype(_impl_.fow_radius_){}};

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

inline void CUserMsg_ParticleManager_SetParticleFoWProperties::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_.fow_control_point_){0}
    , decltype(_impl_.fow_control_point2_){0}
    , decltype(_impl_.fow_radius_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetParticleFoWProperties::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleFoWProperties)
  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_.fow_control_point_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.fow_radius_) -
        reinterpret_cast<char*>(&_impl_.fow_control_point_)) + sizeof(_impl_.fow_radius_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleFoWProperties::_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 fow_control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_fow_control_point(&has_bits);
          _impl_.fow_control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 fow_control_point2 = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_fow_control_point2(&has_bits);
          _impl_.fow_control_point2_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float fow_radius = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_fow_radius(&has_bits);
          _impl_.fow_radius_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_SetParticleFoWProperties::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleFoWProperties)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

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

  // optional float fow_radius = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_fow_radius(), 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:CUserMsg_ParticleManager.SetParticleFoWProperties)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleFoWProperties::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleFoWProperties)
  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 int32 fow_control_point = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_fow_control_point());
    }

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

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

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

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


void CUserMsg_ParticleManager_SetParticleFoWProperties::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleFoWProperties*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleFoWProperties&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleFoWProperties)
  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_.fow_control_point_ = from._impl_.fow_control_point_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.fow_control_point2_ = from._impl_.fow_control_point2_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.fow_radius_ = from._impl_.fow_radius_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetParticleFoWProperties::InternalSwap(CUserMsg_ParticleManager_SetParticleFoWProperties* 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(CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_.fow_radius_)
      + sizeof(CUserMsg_ParticleManager_SetParticleFoWProperties::_impl_.fow_radius_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetParticleFoWProperties, _impl_.fow_control_point_)>(
          reinterpret_cast<char*>(&_impl_.fow_control_point_),
          reinterpret_cast<char*>(&other->_impl_.fow_control_point_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleFoWProperties::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[53]);
}

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

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

CUserMsg_ParticleManager_SetParticleShouldCheckFoW::CUserMsg_ParticleManager_SetParticleShouldCheckFoW(::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:CUserMsg_ParticleManager.SetParticleShouldCheckFoW)
}
CUserMsg_ParticleManager_SetParticleShouldCheckFoW::CUserMsg_ParticleManager_SetParticleShouldCheckFoW(const CUserMsg_ParticleManager_SetParticleShouldCheckFoW& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleShouldCheckFoW* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.check_fow_){}};

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

inline void CUserMsg_ParticleManager_SetParticleShouldCheckFoW::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_.check_fow_){false}
  };
}

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

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

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

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

  _impl_.check_fow_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleShouldCheckFoW::_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 bool check_fow = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_check_fow(&has_bits);
          _impl_.check_fow_ = ::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* CUserMsg_ParticleManager_SetParticleShouldCheckFoW::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleShouldCheckFoW)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool check_fow = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_check_fow(), 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:CUserMsg_ParticleManager.SetParticleShouldCheckFoW)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleShouldCheckFoW::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleShouldCheckFoW)
  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 bool check_fow = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_check_fow()) {
    _this->_internal_set_check_fow(from._internal_check_fow());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleShouldCheckFoW::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[54]);
}

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

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

CUserMsg_ParticleManager_SetControlPointModel::CUserMsg_ParticleManager_SetControlPointModel(::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:CUserMsg_ParticleManager.SetControlPointModel)
}
CUserMsg_ParticleManager_SetControlPointModel::CUserMsg_ParticleManager_SetControlPointModel(const CUserMsg_ParticleManager_SetControlPointModel& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetControlPointModel* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.model_name_){}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.model_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.model_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_model_name()) {
    _this->_impl_.model_name_.Set(from._internal_model_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetControlPointModel)
}

inline void CUserMsg_ParticleManager_SetControlPointModel::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_.model_name_){}
    , decltype(_impl_.control_point_){0}
  };
  _impl_.model_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.model_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetControlPointModel::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.model_name_.Destroy();
}

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

void CUserMsg_ParticleManager_SetControlPointModel::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetControlPointModel)
  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) {
    _impl_.model_name_.ClearNonDefaultToEmpty();
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetControlPointModel::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string model_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_model_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetControlPointModel.model_name");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_SetControlPointModel::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetControlPointModel)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional string model_name = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_model_name().data(), static_cast<int>(this->_internal_model_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetControlPointModel.model_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_model_name(), 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:CUserMsg_ParticleManager.SetControlPointModel)
  return target;
}

size_t CUserMsg_ParticleManager_SetControlPointModel::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetControlPointModel)
  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 & 0x00000003u) {
    // optional string model_name = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_model_name());
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_SetControlPointModel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetControlPointModel*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetControlPointModel&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetControlPointModel)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_model_name(from._internal_model_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetControlPointModel::InternalSwap(CUserMsg_ParticleManager_SetControlPointModel* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.model_name_, lhs_arena,
      &other->_impl_.model_name_, rhs_arena
  );
  swap(_impl_.control_point_, other->_impl_.control_point_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetControlPointModel::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[55]);
}

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

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

CUserMsg_ParticleManager_SetControlPointSnapshot::CUserMsg_ParticleManager_SetControlPointSnapshot(::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:CUserMsg_ParticleManager.SetControlPointSnapshot)
}
CUserMsg_ParticleManager_SetControlPointSnapshot::CUserMsg_ParticleManager_SetControlPointSnapshot(const CUserMsg_ParticleManager_SetControlPointSnapshot& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetControlPointSnapshot* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.snapshot_name_){}
    , decltype(_impl_.control_point_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.snapshot_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.snapshot_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_snapshot_name()) {
    _this->_impl_.snapshot_name_.Set(from._internal_snapshot_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.control_point_ = from._impl_.control_point_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetControlPointSnapshot)
}

inline void CUserMsg_ParticleManager_SetControlPointSnapshot::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_.snapshot_name_){}
    , decltype(_impl_.control_point_){0}
  };
  _impl_.snapshot_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.snapshot_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetControlPointSnapshot::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.snapshot_name_.Destroy();
}

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

void CUserMsg_ParticleManager_SetControlPointSnapshot::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetControlPointSnapshot)
  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) {
    _impl_.snapshot_name_.ClearNonDefaultToEmpty();
  }
  _impl_.control_point_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetControlPointSnapshot::_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 control_point = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_control_point(&has_bits);
          _impl_.control_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string snapshot_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_snapshot_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetControlPointSnapshot.snapshot_name");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_SetControlPointSnapshot::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetControlPointSnapshot)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional string snapshot_name = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_snapshot_name().data(), static_cast<int>(this->_internal_snapshot_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetControlPointSnapshot.snapshot_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_snapshot_name(), 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:CUserMsg_ParticleManager.SetControlPointSnapshot)
  return target;
}

size_t CUserMsg_ParticleManager_SetControlPointSnapshot::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetControlPointSnapshot)
  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 & 0x00000003u) {
    // optional string snapshot_name = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_snapshot_name());
    }

    // optional int32 control_point = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_control_point());
    }

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

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


void CUserMsg_ParticleManager_SetControlPointSnapshot::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetControlPointSnapshot*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetControlPointSnapshot&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetControlPointSnapshot)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_snapshot_name(from._internal_snapshot_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.control_point_ = from._impl_.control_point_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetControlPointSnapshot::InternalSwap(CUserMsg_ParticleManager_SetControlPointSnapshot* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.snapshot_name_, lhs_arena,
      &other->_impl_.snapshot_name_, rhs_arena
  );
  swap(_impl_.control_point_, other->_impl_.control_point_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetControlPointSnapshot::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[56]);
}

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

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

CUserMsg_ParticleManager_SetParticleText::CUserMsg_ParticleManager_SetParticleText(::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:CUserMsg_ParticleManager.SetParticleText)
}
CUserMsg_ParticleManager_SetParticleText::CUserMsg_ParticleManager_SetParticleText(const CUserMsg_ParticleManager_SetParticleText& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleText* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.text_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_text()) {
    _this->_impl_.text_.Set(from._internal_text(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleText)
}

inline void CUserMsg_ParticleManager_SetParticleText::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_.text_){}
  };
  _impl_.text_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.text_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetParticleText::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.text_.Destroy();
}

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

void CUserMsg_ParticleManager_SetParticleText::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleText)
  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) {
    _impl_.text_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleText::_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 string text = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_text();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetParticleText.text");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_SetParticleText::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleText)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string text = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_text().data(), static_cast<int>(this->_internal_text().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetParticleText.text");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_text(), 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:CUserMsg_ParticleManager.SetParticleText)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleText::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleText)
  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 string text = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_text());
  }

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

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


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

  if (from._internal_has_text()) {
    _this->_internal_set_text(from._internal_text());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetParticleText::InternalSwap(CUserMsg_ParticleManager_SetParticleText* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.text_, lhs_arena,
      &other->_impl_.text_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleText::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[57]);
}

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

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

CUserMsg_ParticleManager_SetTextureAttribute::CUserMsg_ParticleManager_SetTextureAttribute(::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:CUserMsg_ParticleManager.SetTextureAttribute)
}
CUserMsg_ParticleManager_SetTextureAttribute::CUserMsg_ParticleManager_SetTextureAttribute(const CUserMsg_ParticleManager_SetTextureAttribute& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetTextureAttribute* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.attribute_name_){}
    , decltype(_impl_.texture_name_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.attribute_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.attribute_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_attribute_name()) {
    _this->_impl_.attribute_name_.Set(from._internal_attribute_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.texture_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.texture_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_texture_name()) {
    _this->_impl_.texture_name_.Set(from._internal_texture_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetTextureAttribute)
}

inline void CUserMsg_ParticleManager_SetTextureAttribute::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_.attribute_name_){}
    , decltype(_impl_.texture_name_){}
  };
  _impl_.attribute_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.attribute_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.texture_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.texture_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetTextureAttribute::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.attribute_name_.Destroy();
  _impl_.texture_name_.Destroy();
}

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

void CUserMsg_ParticleManager_SetTextureAttribute::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetTextureAttribute)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.attribute_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.texture_name_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetTextureAttribute::_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 string attribute_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_attribute_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetTextureAttribute.attribute_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string texture_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_texture_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetTextureAttribute.texture_name");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_SetTextureAttribute::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetTextureAttribute)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string attribute_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_attribute_name().data(), static_cast<int>(this->_internal_attribute_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetTextureAttribute.attribute_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_attribute_name(), target);
  }

  // optional string texture_name = 2;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_texture_name().data(), static_cast<int>(this->_internal_texture_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetTextureAttribute.texture_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_texture_name(), 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:CUserMsg_ParticleManager.SetTextureAttribute)
  return target;
}

size_t CUserMsg_ParticleManager_SetTextureAttribute::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetTextureAttribute)
  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 & 0x00000003u) {
    // optional string attribute_name = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_attribute_name());
    }

    // optional string texture_name = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_texture_name());
    }

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

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


void CUserMsg_ParticleManager_SetTextureAttribute::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetTextureAttribute*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetTextureAttribute&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetTextureAttribute)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_attribute_name(from._internal_attribute_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_texture_name(from._internal_texture_name());
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetTextureAttribute::InternalSwap(CUserMsg_ParticleManager_SetTextureAttribute* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.attribute_name_, lhs_arena,
      &other->_impl_.attribute_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.texture_name_, lhs_arena,
      &other->_impl_.texture_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetTextureAttribute::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[58]);
}

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

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

CUserMsg_ParticleManager_SetSceneObjectGenericFlag::CUserMsg_ParticleManager_SetSceneObjectGenericFlag(::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:CUserMsg_ParticleManager.SetSceneObjectGenericFlag)
}
CUserMsg_ParticleManager_SetSceneObjectGenericFlag::CUserMsg_ParticleManager_SetSceneObjectGenericFlag(const CUserMsg_ParticleManager_SetSceneObjectGenericFlag& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetSceneObjectGenericFlag* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.flag_value_){}};

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

inline void CUserMsg_ParticleManager_SetSceneObjectGenericFlag::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_.flag_value_){false}
  };
}

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

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

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

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

  _impl_.flag_value_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetSceneObjectGenericFlag::_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 bool flag_value = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_flag_value(&has_bits);
          _impl_.flag_value_ = ::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* CUserMsg_ParticleManager_SetSceneObjectGenericFlag::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetSceneObjectGenericFlag)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool flag_value = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_flag_value(), 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:CUserMsg_ParticleManager.SetSceneObjectGenericFlag)
  return target;
}

size_t CUserMsg_ParticleManager_SetSceneObjectGenericFlag::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetSceneObjectGenericFlag)
  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 bool flag_value = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_flag_value()) {
    _this->_internal_set_flag_value(from._internal_flag_value());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetSceneObjectGenericFlag::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[59]);
}

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

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

CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat(::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:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
}
CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat(const CUserMsg_ParticleManager_SetSceneObjectTintAndDesat& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetSceneObjectTintAndDesat* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.tint_){}
    , decltype(_impl_.desat_){}};

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

inline void CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::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_.tint_){0u}
    , decltype(_impl_.desat_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
  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 & 0x00000003u) {
    ::memset(&_impl_.tint_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.desat_) -
        reinterpret_cast<char*>(&_impl_.tint_)) + sizeof(_impl_.desat_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::_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 tint = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_tint(&has_bits);
          _impl_.tint_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional float desat = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_desat(&has_bits);
          _impl_.desat_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

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

  // optional float desat = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_desat(), 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:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
  return target;
}

size_t CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
  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 & 0x00000003u) {
    // optional fixed32 tint = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float desat = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

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


void CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetSceneObjectTintAndDesat*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetSceneObjectTintAndDesat&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetSceneObjectTintAndDesat)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.tint_ = from._impl_.tint_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.desat_ = from._impl_.desat_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::InternalSwap(CUserMsg_ParticleManager_SetSceneObjectTintAndDesat* 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(CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _impl_.desat_)
      + sizeof(CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::_impl_.desat_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetSceneObjectTintAndDesat, _impl_.tint_)>(
          reinterpret_cast<char*>(&_impl_.tint_),
          reinterpret_cast<char*>(&other->_impl_.tint_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[60]);
}

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

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

CUserMsg_ParticleManager_ParticleSkipToTime::CUserMsg_ParticleManager_ParticleSkipToTime(::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:CUserMsg_ParticleManager.ParticleSkipToTime)
}
CUserMsg_ParticleManager_ParticleSkipToTime::CUserMsg_ParticleManager_ParticleSkipToTime(const CUserMsg_ParticleManager_ParticleSkipToTime& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_ParticleSkipToTime* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.skip_to_time_){}};

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

inline void CUserMsg_ParticleManager_ParticleSkipToTime::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_.skip_to_time_){0}
  };
}

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

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

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

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

  _impl_.skip_to_time_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_ParticleSkipToTime::_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 float skip_to_time = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_skip_to_time(&has_bits);
          _impl_.skip_to_time_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_ParticleSkipToTime::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.ParticleSkipToTime)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float skip_to_time = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_skip_to_time(), 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:CUserMsg_ParticleManager.ParticleSkipToTime)
  return target;
}

size_t CUserMsg_ParticleManager_ParticleSkipToTime::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.ParticleSkipToTime)
  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 float skip_to_time = 1;
  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 CUserMsg_ParticleManager_ParticleSkipToTime::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_ParticleManager_ParticleSkipToTime::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_ParticleSkipToTime::GetClassData() const { return &_class_data_; }


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

  if (from._internal_has_skip_to_time()) {
    _this->_internal_set_skip_to_time(from._internal_skip_to_time());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ParticleSkipToTime::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[61]);
}

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

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

CUserMsg_ParticleManager_ParticleCanFreeze::CUserMsg_ParticleManager_ParticleCanFreeze(::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:CUserMsg_ParticleManager.ParticleCanFreeze)
}
CUserMsg_ParticleManager_ParticleCanFreeze::CUserMsg_ParticleManager_ParticleCanFreeze(const CUserMsg_ParticleManager_ParticleCanFreeze& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_ParticleCanFreeze* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.can_freeze_){}};

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

inline void CUserMsg_ParticleManager_ParticleCanFreeze::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_.can_freeze_){false}
  };
}

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

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

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

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

  _impl_.can_freeze_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_ParticleCanFreeze::_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 bool can_freeze = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_can_freeze(&has_bits);
          _impl_.can_freeze_ = ::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* CUserMsg_ParticleManager_ParticleCanFreeze::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.ParticleCanFreeze)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool can_freeze = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_can_freeze(), 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:CUserMsg_ParticleManager.ParticleCanFreeze)
  return target;
}

size_t CUserMsg_ParticleManager_ParticleCanFreeze::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.ParticleCanFreeze)
  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 bool can_freeze = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_can_freeze()) {
    _this->_internal_set_can_freeze(from._internal_can_freeze());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ParticleCanFreeze::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[62]);
}

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

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

CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride(::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:CUserMsg_ParticleManager.ParticleFreezeTransitionOverride)
}
CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride(const CUserMsg_ParticleManager_ParticleFreezeTransitionOverride& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_ParticleFreezeTransitionOverride* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.freeze_transition_override_){}};

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

inline void CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::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_.freeze_transition_override_){0}
  };
}

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

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

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

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

  _impl_.freeze_transition_override_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::_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 float freeze_transition_override = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_freeze_transition_override(&has_bits);
          _impl_.freeze_transition_override_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.ParticleFreezeTransitionOverride)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float freeze_transition_override = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_freeze_transition_override(), 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:CUserMsg_ParticleManager.ParticleFreezeTransitionOverride)
  return target;
}

size_t CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.ParticleFreezeTransitionOverride)
  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 float freeze_transition_override = 1;
  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 CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::GetClassData() const { return &_class_data_; }


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

  if (from._internal_has_freeze_transition_override()) {
    _this->_internal_set_freeze_transition_override(from._internal_freeze_transition_override());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[63]);
}

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

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

CUserMsg_ParticleManager_FreezeParticleInvolving::CUserMsg_ParticleManager_FreezeParticleInvolving(::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:CUserMsg_ParticleManager.FreezeParticleInvolving)
}
CUserMsg_ParticleManager_FreezeParticleInvolving::CUserMsg_ParticleManager_FreezeParticleInvolving(const CUserMsg_ParticleManager_FreezeParticleInvolving& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_FreezeParticleInvolving* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.set_frozen_){}
    , decltype(_impl_.transition_duration_){}
    , decltype(_impl_.entity_handle_){}};

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

inline void CUserMsg_ParticleManager_FreezeParticleInvolving::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_.set_frozen_){false}
    , decltype(_impl_.transition_duration_){0}
    , decltype(_impl_.entity_handle_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_FreezeParticleInvolving::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.FreezeParticleInvolving)
  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_.set_frozen_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.transition_duration_) -
        reinterpret_cast<char*>(&_impl_.set_frozen_)) + sizeof(_impl_.transition_duration_));
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_FreezeParticleInvolving::_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 bool set_frozen = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_set_frozen(&has_bits);
          _impl_.set_frozen_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float transition_duration = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_transition_duration(&has_bits);
          _impl_.transition_duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 3 [default = 16777215];
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::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* CUserMsg_ParticleManager_FreezeParticleInvolving::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.FreezeParticleInvolving)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool set_frozen = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_set_frozen(), target);
  }

  // optional float transition_duration = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_transition_duration(), target);
  }

  // optional uint32 entity_handle = 3 [default = 16777215];
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_entity_handle(), 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:CUserMsg_ParticleManager.FreezeParticleInvolving)
  return target;
}

size_t CUserMsg_ParticleManager_FreezeParticleInvolving::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.FreezeParticleInvolving)
  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 bool set_frozen = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 1;
    }

    // optional float transition_duration = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

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

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


void CUserMsg_ParticleManager_FreezeParticleInvolving::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_FreezeParticleInvolving*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_FreezeParticleInvolving&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.FreezeParticleInvolving)
  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_.set_frozen_ = from._impl_.set_frozen_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.transition_duration_ = from._impl_.transition_duration_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_FreezeParticleInvolving::InternalSwap(CUserMsg_ParticleManager_FreezeParticleInvolving* 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(CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_.transition_duration_)
      + sizeof(CUserMsg_ParticleManager_FreezeParticleInvolving::_impl_.transition_duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_FreezeParticleInvolving, _impl_.set_frozen_)>(
          reinterpret_cast<char*>(&_impl_.set_frozen_),
          reinterpret_cast<char*>(&other->_impl_.set_frozen_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_FreezeParticleInvolving::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[64]);
}

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

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

CUserMsg_ParticleManager_AddModellistOverrideElement::CUserMsg_ParticleManager_AddModellistOverrideElement(::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:CUserMsg_ParticleManager.AddModellistOverrideElement)
}
CUserMsg_ParticleManager_AddModellistOverrideElement::CUserMsg_ParticleManager_AddModellistOverrideElement(const CUserMsg_ParticleManager_AddModellistOverrideElement& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_AddModellistOverrideElement* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.model_name_){}
    , decltype(_impl_.spawn_probability_){}
    , decltype(_impl_.groupid_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.model_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.model_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_model_name()) {
    _this->_impl_.model_name_.Set(from._internal_model_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.spawn_probability_, &from._impl_.spawn_probability_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.groupid_) -
    reinterpret_cast<char*>(&_impl_.spawn_probability_)) + sizeof(_impl_.groupid_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.AddModellistOverrideElement)
}

inline void CUserMsg_ParticleManager_AddModellistOverrideElement::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_.model_name_){}
    , decltype(_impl_.spawn_probability_){0}
    , decltype(_impl_.groupid_){0u}
  };
  _impl_.model_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.model_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_AddModellistOverrideElement::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.model_name_.Destroy();
}

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

void CUserMsg_ParticleManager_AddModellistOverrideElement::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.AddModellistOverrideElement)
  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) {
    _impl_.model_name_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    ::memset(&_impl_.spawn_probability_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.groupid_) -
        reinterpret_cast<char*>(&_impl_.spawn_probability_)) + sizeof(_impl_.groupid_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_AddModellistOverrideElement::_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 string model_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_model_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.AddModellistOverrideElement.model_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional float spawn_probability = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_spawn_probability(&has_bits);
          _impl_.spawn_probability_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 groupid = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_groupid(&has_bits);
          _impl_.groupid_ = ::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* CUserMsg_ParticleManager_AddModellistOverrideElement::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.AddModellistOverrideElement)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string model_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_model_name().data(), static_cast<int>(this->_internal_model_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.AddModellistOverrideElement.model_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_model_name(), target);
  }

  // optional float spawn_probability = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_spawn_probability(), target);
  }

  // optional uint32 groupid = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_groupid(), 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:CUserMsg_ParticleManager.AddModellistOverrideElement)
  return target;
}

size_t CUserMsg_ParticleManager_AddModellistOverrideElement::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.AddModellistOverrideElement)
  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 string model_name = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_model_name());
    }

    // optional float spawn_probability = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional uint32 groupid = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_groupid());
    }

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

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


void CUserMsg_ParticleManager_AddModellistOverrideElement::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_AddModellistOverrideElement*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_AddModellistOverrideElement&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.AddModellistOverrideElement)
  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->_internal_set_model_name(from._internal_model_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.spawn_probability_ = from._impl_.spawn_probability_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.groupid_ = from._impl_.groupid_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_AddModellistOverrideElement::InternalSwap(CUserMsg_ParticleManager_AddModellistOverrideElement* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.model_name_, lhs_arena,
      &other->_impl_.model_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_.groupid_)
      + sizeof(CUserMsg_ParticleManager_AddModellistOverrideElement::_impl_.groupid_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_AddModellistOverrideElement, _impl_.spawn_probability_)>(
          reinterpret_cast<char*>(&_impl_.spawn_probability_),
          reinterpret_cast<char*>(&other->_impl_.spawn_probability_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_AddModellistOverrideElement::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[65]);
}

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

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

CUserMsg_ParticleManager_ClearModellistOverride::CUserMsg_ParticleManager_ClearModellistOverride(::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:CUserMsg_ParticleManager.ClearModellistOverride)
}
CUserMsg_ParticleManager_ClearModellistOverride::CUserMsg_ParticleManager_ClearModellistOverride(const CUserMsg_ParticleManager_ClearModellistOverride& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_ClearModellistOverride* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.groupid_){}};

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

inline void CUserMsg_ParticleManager_ClearModellistOverride::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_.groupid_){0u}
  };
}

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

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

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

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

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

const char* CUserMsg_ParticleManager_ClearModellistOverride::_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 uint32 groupid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_groupid(&has_bits);
          _impl_.groupid_ = ::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* CUserMsg_ParticleManager_ClearModellistOverride::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.ClearModellistOverride)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 groupid = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_groupid(), 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:CUserMsg_ParticleManager.ClearModellistOverride)
  return target;
}

size_t CUserMsg_ParticleManager_ClearModellistOverride::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.ClearModellistOverride)
  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 uint32 groupid = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_groupid());
  }

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

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


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

  if (from._internal_has_groupid()) {
    _this->_internal_set_groupid(from._internal_groupid());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_ClearModellistOverride::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[66]);
}

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

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

CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue(::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:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue(const CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.value_name_hash_){}
    , decltype(_impl_.value_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.value_name_hash_, &from._impl_.value_name_hash_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.value_) -
    reinterpret_cast<char*>(&_impl_.value_name_hash_)) + sizeof(_impl_.value_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
}

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::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_.value_name_hash_){0u}
    , decltype(_impl_.value_){0}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  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 & 0x00000003u) {
    ::memset(&_impl_.value_name_hash_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.value_) -
        reinterpret_cast<char*>(&_impl_.value_name_hash_)) + sizeof(_impl_.value_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::_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 uint32 value_name_hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_value_name_hash(&has_bits);
          _impl_.value_name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_value(&has_bits);
          _impl_.value_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 value_name_hash = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_value_name_hash(), target);
  }

  // optional float value = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_value(), 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:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  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 & 0x00000003u) {
    // optional uint32 value_name_hash = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_value_name_hash());
    }

    // optional float value = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

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

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


void CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.value_ = from._impl_.value_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::CopyFrom(const CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::InternalSwap(CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue* 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(CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _impl_.value_)
      + sizeof(CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::_impl_.value_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue, _impl_.value_name_hash_)>(
          reinterpret_cast<char*>(&_impl_.value_name_hash_),
          reinterpret_cast<char*>(&other->_impl_.value_name_hash_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[67]);
}

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

class CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue>()._impl_._has_bits_);
  static void set_has_value_name_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& value(const CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue* msg);
  static void set_has_value(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::_Internal::value(const CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue* msg) {
  return *msg->_impl_.value_;
}
void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::clear_value() {
  if (_impl_.value_ != nullptr) _impl_.value_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue(::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:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue(const CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.value_){nullptr}
    , decltype(_impl_.value_name_hash_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_value()) {
    _this->_impl_.value_ = new ::CMsgVector(*from._impl_.value_);
  }
  _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
}

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::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_.value_){nullptr}
    , decltype(_impl_.value_name_hash_){0u}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  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_.value_ != nullptr);
    _impl_.value_->Clear();
  }
  _impl_.value_name_hash_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::_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 uint32 value_name_hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_value_name_hash(&has_bits);
          _impl_.value_name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_value(), 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* CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 value_name_hash = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_value_name_hash(), target);
  }

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

  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:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  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 & 0x00000003u) {
    // optional .CMsgVector value = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.value_);
    }

    // optional uint32 value_name_hash = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_value_name_hash());
    }

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

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


void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_value()->::CMsgVector::MergeFrom(
          from._internal_value());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::CopyFrom(const CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::InternalSwap(CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue* 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(CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _impl_.value_name_hash_)
      + sizeof(CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::_impl_.value_name_hash_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue, _impl_.value_)>(
          reinterpret_cast<char*>(&_impl_.value_),
          reinterpret_cast<char*>(&other->_impl_.value_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[68]);
}

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

class CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue>()._impl_._has_bits_);
  static void set_has_value_name_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgQAngle& angles(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* msg);
  static void set_has_angles(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgVector& translation(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* msg);
  static void set_has_translation(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgQAngle&
CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_Internal::angles(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* msg) {
  return *msg->_impl_.angles_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_Internal::translation(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* msg) {
  return *msg->_impl_.translation_;
}
void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::clear_angles() {
  if (_impl_.angles_ != nullptr) _impl_.angles_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::clear_translation() {
  if (_impl_.translation_ != nullptr) _impl_.translation_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue(::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:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.angles_){nullptr}
    , decltype(_impl_.translation_){nullptr}
    , decltype(_impl_.value_name_hash_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_angles()) {
    _this->_impl_.angles_ = new ::CMsgQAngle(*from._impl_.angles_);
  }
  if (from._internal_has_translation()) {
    _this->_impl_.translation_ = new ::CMsgVector(*from._impl_.translation_);
  }
  _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
}

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::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_.angles_){nullptr}
    , decltype(_impl_.translation_){nullptr}
    , decltype(_impl_.value_name_hash_){0u}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.angles_ != nullptr);
      _impl_.angles_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.translation_ != nullptr);
      _impl_.translation_->Clear();
    }
  }
  _impl_.value_name_hash_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_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 uint32 value_name_hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_value_name_hash(&has_bits);
          _impl_.value_name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&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 .CMsgVector translation = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_translation(), 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* CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 value_name_hash = 1;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_value_name_hash(), target);
  }

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

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

  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:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  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 .CMsgQAngle angles = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.angles_);
    }

    // optional .CMsgVector translation = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.translation_);
    }

    // optional uint32 value_name_hash = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_value_name_hash());
    }

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

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


void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  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->_internal_mutable_angles()->::CMsgQAngle::MergeFrom(
          from._internal_angles());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_translation()->::CMsgVector::MergeFrom(
          from._internal_translation());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::CopyFrom(const CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::InternalSwap(CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue* 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(CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_.value_name_hash_)
      + sizeof(CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::_impl_.value_name_hash_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue, _impl_.angles_)>(
          reinterpret_cast<char*>(&_impl_.angles_),
          reinterpret_cast<char*>(&other->_impl_.angles_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[69]);
}

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

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

CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext(::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:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
}
CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext(const CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.value_name_hash_){}
    , decltype(_impl_.ent_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.value_name_hash_, &from._impl_.value_name_hash_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.ent_index_) -
    reinterpret_cast<char*>(&_impl_.value_name_hash_)) + sizeof(_impl_.ent_index_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
}

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::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_.value_name_hash_){0u}
    , decltype(_impl_.ent_index_){16777215u}
  };
}

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

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

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  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 & 0x00000003u) {
    _impl_.value_name_hash_ = 0u;
    _impl_.ent_index_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::_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 uint32 value_name_hash = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_value_name_hash(&has_bits);
          _impl_.value_name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ent_index = 2 [default = 16777215];
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::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* CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 value_name_hash = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_value_name_hash(), target);
  }

  // optional uint32 ent_index = 2 [default = 16777215];
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_ent_index(), 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:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  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 & 0x00000003u) {
    // optional uint32 value_name_hash = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_value_name_hash());
    }

    // optional uint32 ent_index = 2 [default = 16777215];
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_ent_index());
    }

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

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


void CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.value_name_hash_ = from._impl_.value_name_hash_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::CopyFrom(const CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[70]);
}

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

class CUserMsg_ParticleManager_SetParticleNamedValueContext::_Internal {
 public:
};

CUserMsg_ParticleManager_SetParticleNamedValueContext::CUserMsg_ParticleManager_SetParticleNamedValueContext(::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:CUserMsg_ParticleManager.SetParticleNamedValueContext)
}
CUserMsg_ParticleManager_SetParticleNamedValueContext::CUserMsg_ParticleManager_SetParticleNamedValueContext(const CUserMsg_ParticleManager_SetParticleNamedValueContext& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleNamedValueContext* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.float_values_){from._impl_.float_values_}
    , decltype(_impl_.vector_values_){from._impl_.vector_values_}
    , decltype(_impl_.transform_values_){from._impl_.transform_values_}
    , decltype(_impl_.ehandle_values_){from._impl_.ehandle_values_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleNamedValueContext)
}

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.float_values_){arena}
    , decltype(_impl_.vector_values_){arena}
    , decltype(_impl_.transform_values_){arena}
    , decltype(_impl_.ehandle_values_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

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

inline void CUserMsg_ParticleManager_SetParticleNamedValueContext::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.float_values_.~RepeatedPtrField();
  _impl_.vector_values_.~RepeatedPtrField();
  _impl_.transform_values_.~RepeatedPtrField();
  _impl_.ehandle_values_.~RepeatedPtrField();
}

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

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

  _impl_.float_values_.Clear();
  _impl_.vector_values_.Clear();
  _impl_.transform_values_.Clear();
  _impl_.ehandle_values_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleNamedValueContext::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue float_values = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_float_values(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue vector_values = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_vector_values(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue transform_values = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_transform_values(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext ehandle_values = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_ehandle_values(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(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:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue float_values = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_float_values_size()); i < n; i++) {
    const auto& repfield = this->_internal_float_values(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue vector_values = 2;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_vector_values_size()); i < n; i++) {
    const auto& repfield = this->_internal_vector_values(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue transform_values = 3;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_transform_values_size()); i < n; i++) {
    const auto& repfield = this->_internal_transform_values(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext ehandle_values = 4;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_ehandle_values_size()); i < n; i++) {
    const auto& repfield = this->_internal_ehandle_values(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream);
  }

  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:CUserMsg_ParticleManager.SetParticleNamedValueContext)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleNamedValueContext::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleNamedValueContext)
  size_t total_size = 0;

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

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue float_values = 1;
  total_size += 1UL * this->_internal_float_values_size();
  for (const auto& msg : this->_impl_.float_values_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue vector_values = 2;
  total_size += 1UL * this->_internal_vector_values_size();
  for (const auto& msg : this->_impl_.vector_values_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue transform_values = 3;
  total_size += 1UL * this->_internal_transform_values_size();
  for (const auto& msg : this->_impl_.transform_values_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext ehandle_values = 4;
  total_size += 1UL * this->_internal_ehandle_values_size();
  for (const auto& msg : this->_impl_.ehandle_values_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

  _this->_impl_.float_values_.MergeFrom(from._impl_.float_values_);
  _this->_impl_.vector_values_.MergeFrom(from._impl_.vector_values_);
  _this->_impl_.transform_values_.MergeFrom(from._impl_.transform_values_);
  _this->_impl_.ehandle_values_.MergeFrom(from._impl_.ehandle_values_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetParticleNamedValueContext::InternalSwap(CUserMsg_ParticleManager_SetParticleNamedValueContext* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.float_values_.InternalSwap(&other->_impl_.float_values_);
  _impl_.vector_values_.InternalSwap(&other->_impl_.vector_values_);
  _impl_.transform_values_.InternalSwap(&other->_impl_.transform_values_);
  _impl_.ehandle_values_.InternalSwap(&other->_impl_.ehandle_values_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleNamedValueContext::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[71]);
}

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

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

CUserMsg_ParticleManager_CreatePhysicsSim::CUserMsg_ParticleManager_CreatePhysicsSim(::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:CUserMsg_ParticleManager.CreatePhysicsSim)
}
CUserMsg_ParticleManager_CreatePhysicsSim::CUserMsg_ParticleManager_CreatePhysicsSim(const CUserMsg_ParticleManager_CreatePhysicsSim& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_CreatePhysicsSim* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.prop_group_name_){}
    , decltype(_impl_.use_high_quality_simulation_){}
    , decltype(_impl_.max_particle_count_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.prop_group_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.prop_group_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_prop_group_name()) {
    _this->_impl_.prop_group_name_.Set(from._internal_prop_group_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.use_high_quality_simulation_, &from._impl_.use_high_quality_simulation_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.max_particle_count_) -
    reinterpret_cast<char*>(&_impl_.use_high_quality_simulation_)) + sizeof(_impl_.max_particle_count_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.CreatePhysicsSim)
}

inline void CUserMsg_ParticleManager_CreatePhysicsSim::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_.prop_group_name_){}
    , decltype(_impl_.use_high_quality_simulation_){false}
    , decltype(_impl_.max_particle_count_){0u}
  };
  _impl_.prop_group_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.prop_group_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_CreatePhysicsSim::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.prop_group_name_.Destroy();
}

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

void CUserMsg_ParticleManager_CreatePhysicsSim::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.CreatePhysicsSim)
  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) {
    _impl_.prop_group_name_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    ::memset(&_impl_.use_high_quality_simulation_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.max_particle_count_) -
        reinterpret_cast<char*>(&_impl_.use_high_quality_simulation_)) + sizeof(_impl_.max_particle_count_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_CreatePhysicsSim::_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 string prop_group_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_prop_group_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.CreatePhysicsSim.prop_group_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool use_high_quality_simulation = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_use_high_quality_simulation(&has_bits);
          _impl_.use_high_quality_simulation_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 max_particle_count = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_max_particle_count(&has_bits);
          _impl_.max_particle_count_ = ::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* CUserMsg_ParticleManager_CreatePhysicsSim::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.CreatePhysicsSim)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string prop_group_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_prop_group_name().data(), static_cast<int>(this->_internal_prop_group_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.CreatePhysicsSim.prop_group_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_prop_group_name(), target);
  }

  // optional bool use_high_quality_simulation = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_use_high_quality_simulation(), target);
  }

  // optional uint32 max_particle_count = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_max_particle_count(), 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:CUserMsg_ParticleManager.CreatePhysicsSim)
  return target;
}

size_t CUserMsg_ParticleManager_CreatePhysicsSim::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.CreatePhysicsSim)
  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 string prop_group_name = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_prop_group_name());
    }

    // optional bool use_high_quality_simulation = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

    // optional uint32 max_particle_count = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_max_particle_count());
    }

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

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


void CUserMsg_ParticleManager_CreatePhysicsSim::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_CreatePhysicsSim*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_CreatePhysicsSim&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.CreatePhysicsSim)
  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->_internal_set_prop_group_name(from._internal_prop_group_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.use_high_quality_simulation_ = from._impl_.use_high_quality_simulation_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.max_particle_count_ = from._impl_.max_particle_count_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_CreatePhysicsSim::InternalSwap(CUserMsg_ParticleManager_CreatePhysicsSim* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.prop_group_name_, lhs_arena,
      &other->_impl_.prop_group_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_CreatePhysicsSim, _impl_.max_particle_count_)
      + sizeof(CUserMsg_ParticleManager_CreatePhysicsSim::_impl_.max_particle_count_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_CreatePhysicsSim, _impl_.use_high_quality_simulation_)>(
          reinterpret_cast<char*>(&_impl_.use_high_quality_simulation_),
          reinterpret_cast<char*>(&other->_impl_.use_high_quality_simulation_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_CreatePhysicsSim::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[72]);
}

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

class CUserMsg_ParticleManager_DestroyPhysicsSim::_Internal {
 public:
};

CUserMsg_ParticleManager_DestroyPhysicsSim::CUserMsg_ParticleManager_DestroyPhysicsSim(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMsg_ParticleManager.DestroyPhysicsSim)
}
CUserMsg_ParticleManager_DestroyPhysicsSim::CUserMsg_ParticleManager_DestroyPhysicsSim(const CUserMsg_ParticleManager_DestroyPhysicsSim& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMsg_ParticleManager_DestroyPhysicsSim* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.DestroyPhysicsSim)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_ParticleManager_DestroyPhysicsSim::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_DestroyPhysicsSim::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_DestroyPhysicsSim::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[73]);
}

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

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

CUserMsg_ParticleManager_SetVData::CUserMsg_ParticleManager_SetVData(::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:CUserMsg_ParticleManager.SetVData)
}
CUserMsg_ParticleManager_SetVData::CUserMsg_ParticleManager_SetVData(const CUserMsg_ParticleManager_SetVData& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetVData* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.vdata_name_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.vdata_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.vdata_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_vdata_name()) {
    _this->_impl_.vdata_name_.Set(from._internal_vdata_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetVData)
}

inline void CUserMsg_ParticleManager_SetVData::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_.vdata_name_){}
  };
  _impl_.vdata_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.vdata_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetVData::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.vdata_name_.Destroy();
}

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

void CUserMsg_ParticleManager_SetVData::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetVData)
  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) {
    _impl_.vdata_name_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetVData::_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 string vdata_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_vdata_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetVData.vdata_name");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_SetVData::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetVData)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string vdata_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_vdata_name().data(), static_cast<int>(this->_internal_vdata_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetVData.vdata_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_vdata_name(), 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:CUserMsg_ParticleManager.SetVData)
  return target;
}

size_t CUserMsg_ParticleManager_SetVData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetVData)
  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 string vdata_name = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_vdata_name());
  }

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

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


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

  if (from._internal_has_vdata_name()) {
    _this->_internal_set_vdata_name(from._internal_vdata_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetVData::InternalSwap(CUserMsg_ParticleManager_SetVData* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.vdata_name_, lhs_arena,
      &other->_impl_.vdata_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetVData::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[74]);
}

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

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

CUserMsg_ParticleManager_SetMaterialOverride::CUserMsg_ParticleManager_SetMaterialOverride(::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:CUserMsg_ParticleManager.SetMaterialOverride)
}
CUserMsg_ParticleManager_SetMaterialOverride::CUserMsg_ParticleManager_SetMaterialOverride(const CUserMsg_ParticleManager_SetMaterialOverride& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetMaterialOverride* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.material_name_){}
    , decltype(_impl_.include_children_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.material_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.material_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_material_name()) {
    _this->_impl_.material_name_.Set(from._internal_material_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.include_children_ = from._impl_.include_children_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetMaterialOverride)
}

inline void CUserMsg_ParticleManager_SetMaterialOverride::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_.material_name_){}
    , decltype(_impl_.include_children_){false}
  };
  _impl_.material_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.material_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_SetMaterialOverride::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.material_name_.Destroy();
}

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

void CUserMsg_ParticleManager_SetMaterialOverride::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetMaterialOverride)
  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) {
    _impl_.material_name_.ClearNonDefaultToEmpty();
  }
  _impl_.include_children_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetMaterialOverride::_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 string material_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_material_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.SetMaterialOverride.material_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool include_children = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_include_children(&has_bits);
          _impl_.include_children_ = ::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* CUserMsg_ParticleManager_SetMaterialOverride::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetMaterialOverride)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string material_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_material_name().data(), static_cast<int>(this->_internal_material_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.SetMaterialOverride.material_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_material_name(), target);
  }

  // optional bool include_children = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_include_children(), 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:CUserMsg_ParticleManager.SetMaterialOverride)
  return target;
}

size_t CUserMsg_ParticleManager_SetMaterialOverride::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetMaterialOverride)
  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 & 0x00000003u) {
    // optional string material_name = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_material_name());
    }

    // optional bool include_children = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

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

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


void CUserMsg_ParticleManager_SetMaterialOverride::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetMaterialOverride*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetMaterialOverride&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetMaterialOverride)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_material_name(from._internal_material_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.include_children_ = from._impl_.include_children_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_SetMaterialOverride::InternalSwap(CUserMsg_ParticleManager_SetMaterialOverride* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.material_name_, lhs_arena,
      &other->_impl_.material_name_, rhs_arena
  );
  swap(_impl_.include_children_, other->_impl_.include_children_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetMaterialOverride::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[75]);
}

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

class CUserMsg_ParticleManager_AddFan::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_AddFan>()._impl_._has_bits_);
  static void set_has_active(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static const ::CMsgVector& bounds_mins(const CUserMsg_ParticleManager_AddFan* msg);
  static void set_has_bounds_mins(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CMsgVector& bounds_maxs(const CUserMsg_ParticleManager_AddFan* msg);
  static void set_has_bounds_maxs(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static const ::CMsgVector& fan_origin(const CUserMsg_ParticleManager_AddFan* msg);
  static void set_has_fan_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static const ::CMsgVector& fan_origin_offset(const CUserMsg_ParticleManager_AddFan* msg);
  static void set_has_fan_origin_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static const ::CMsgVector& fan_direction(const CUserMsg_ParticleManager_AddFan* msg);
  static void set_has_fan_direction(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_force(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_fan_force_curve(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_falloff(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_pull_towards_point(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_curve_min_dist(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static void set_has_curve_max_dist(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_fan_type(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static void set_has_cone_start_radius(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_cone_end_radius(HasBits* has_bits) {
    (*has_bits)[0] |= 32768u;
  }
  static void set_has_cone_length(HasBits* has_bits) {
    (*has_bits)[0] |= 65536u;
  }
  static void set_has_entity_handle(HasBits* has_bits) {
    (*has_bits)[0] |= 131072u;
  }
  static void set_has_attachment_name(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_AddFan::_Internal::bounds_mins(const CUserMsg_ParticleManager_AddFan* msg) {
  return *msg->_impl_.bounds_mins_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_AddFan::_Internal::bounds_maxs(const CUserMsg_ParticleManager_AddFan* msg) {
  return *msg->_impl_.bounds_maxs_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_AddFan::_Internal::fan_origin(const CUserMsg_ParticleManager_AddFan* msg) {
  return *msg->_impl_.fan_origin_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_AddFan::_Internal::fan_origin_offset(const CUserMsg_ParticleManager_AddFan* msg) {
  return *msg->_impl_.fan_origin_offset_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_AddFan::_Internal::fan_direction(const CUserMsg_ParticleManager_AddFan* msg) {
  return *msg->_impl_.fan_direction_;
}
void CUserMsg_ParticleManager_AddFan::clear_bounds_mins() {
  if (_impl_.bounds_mins_ != nullptr) _impl_.bounds_mins_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
void CUserMsg_ParticleManager_AddFan::clear_bounds_maxs() {
  if (_impl_.bounds_maxs_ != nullptr) _impl_.bounds_maxs_->Clear();
  _impl_._has_bits_[0] &= ~0x00000008u;
}
void CUserMsg_ParticleManager_AddFan::clear_fan_origin() {
  if (_impl_.fan_origin_ != nullptr) _impl_.fan_origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000010u;
}
void CUserMsg_ParticleManager_AddFan::clear_fan_origin_offset() {
  if (_impl_.fan_origin_offset_ != nullptr) _impl_.fan_origin_offset_->Clear();
  _impl_._has_bits_[0] &= ~0x00000020u;
}
void CUserMsg_ParticleManager_AddFan::clear_fan_direction() {
  if (_impl_.fan_direction_ != nullptr) _impl_.fan_direction_->Clear();
  _impl_._has_bits_[0] &= ~0x00000040u;
}
CUserMsg_ParticleManager_AddFan::CUserMsg_ParticleManager_AddFan(::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:CUserMsg_ParticleManager.AddFan)
}
CUserMsg_ParticleManager_AddFan::CUserMsg_ParticleManager_AddFan(const CUserMsg_ParticleManager_AddFan& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_AddFan* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.fan_force_curve_){}
    , decltype(_impl_.attachment_name_){}
    , decltype(_impl_.bounds_mins_){nullptr}
    , decltype(_impl_.bounds_maxs_){nullptr}
    , decltype(_impl_.fan_origin_){nullptr}
    , decltype(_impl_.fan_origin_offset_){nullptr}
    , decltype(_impl_.fan_direction_){nullptr}
    , decltype(_impl_.active_){}
    , decltype(_impl_.falloff_){}
    , decltype(_impl_.pull_towards_point_){}
    , decltype(_impl_.force_){}
    , decltype(_impl_.curve_min_dist_){}
    , decltype(_impl_.curve_max_dist_){}
    , decltype(_impl_.fan_type_){}
    , decltype(_impl_.cone_start_radius_){}
    , decltype(_impl_.cone_end_radius_){}
    , decltype(_impl_.cone_length_){}
    , decltype(_impl_.entity_handle_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.fan_force_curve_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.fan_force_curve_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_fan_force_curve()) {
    _this->_impl_.fan_force_curve_.Set(from._internal_fan_force_curve(), 
      _this->GetArenaForAllocation());
  }
  _impl_.attachment_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.attachment_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_attachment_name()) {
    _this->_impl_.attachment_name_.Set(from._internal_attachment_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_bounds_mins()) {
    _this->_impl_.bounds_mins_ = new ::CMsgVector(*from._impl_.bounds_mins_);
  }
  if (from._internal_has_bounds_maxs()) {
    _this->_impl_.bounds_maxs_ = new ::CMsgVector(*from._impl_.bounds_maxs_);
  }
  if (from._internal_has_fan_origin()) {
    _this->_impl_.fan_origin_ = new ::CMsgVector(*from._impl_.fan_origin_);
  }
  if (from._internal_has_fan_origin_offset()) {
    _this->_impl_.fan_origin_offset_ = new ::CMsgVector(*from._impl_.fan_origin_offset_);
  }
  if (from._internal_has_fan_direction()) {
    _this->_impl_.fan_direction_ = new ::CMsgVector(*from._impl_.fan_direction_);
  }
  ::memcpy(&_impl_.active_, &from._impl_.active_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.entity_handle_) -
    reinterpret_cast<char*>(&_impl_.active_)) + sizeof(_impl_.entity_handle_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.AddFan)
}

inline void CUserMsg_ParticleManager_AddFan::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_.fan_force_curve_){}
    , decltype(_impl_.attachment_name_){}
    , decltype(_impl_.bounds_mins_){nullptr}
    , decltype(_impl_.bounds_maxs_){nullptr}
    , decltype(_impl_.fan_origin_){nullptr}
    , decltype(_impl_.fan_origin_offset_){nullptr}
    , decltype(_impl_.fan_direction_){nullptr}
    , decltype(_impl_.active_){false}
    , decltype(_impl_.falloff_){false}
    , decltype(_impl_.pull_towards_point_){false}
    , decltype(_impl_.force_){0}
    , decltype(_impl_.curve_min_dist_){0}
    , decltype(_impl_.curve_max_dist_){0}
    , decltype(_impl_.fan_type_){0u}
    , decltype(_impl_.cone_start_radius_){0}
    , decltype(_impl_.cone_end_radius_){0}
    , decltype(_impl_.cone_length_){0}
    , decltype(_impl_.entity_handle_){16777215u}
  };
  _impl_.fan_force_curve_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.fan_force_curve_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.attachment_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.attachment_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CUserMsg_ParticleManager_AddFan::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.fan_force_curve_.Destroy();
  _impl_.attachment_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.bounds_mins_;
  if (this != internal_default_instance()) delete _impl_.bounds_maxs_;
  if (this != internal_default_instance()) delete _impl_.fan_origin_;
  if (this != internal_default_instance()) delete _impl_.fan_origin_offset_;
  if (this != internal_default_instance()) delete _impl_.fan_direction_;
}

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

void CUserMsg_ParticleManager_AddFan::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.AddFan)
  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) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.fan_force_curve_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.attachment_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.bounds_mins_ != nullptr);
      _impl_.bounds_mins_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.bounds_maxs_ != nullptr);
      _impl_.bounds_maxs_->Clear();
    }
    if (cached_has_bits & 0x00000010u) {
      GOOGLE_DCHECK(_impl_.fan_origin_ != nullptr);
      _impl_.fan_origin_->Clear();
    }
    if (cached_has_bits & 0x00000020u) {
      GOOGLE_DCHECK(_impl_.fan_origin_offset_ != nullptr);
      _impl_.fan_origin_offset_->Clear();
    }
    if (cached_has_bits & 0x00000040u) {
      GOOGLE_DCHECK(_impl_.fan_direction_ != nullptr);
      _impl_.fan_direction_->Clear();
    }
  }
  _impl_.active_ = false;
  if (cached_has_bits & 0x0000ff00u) {
    ::memset(&_impl_.falloff_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.cone_end_radius_) -
        reinterpret_cast<char*>(&_impl_.falloff_)) + sizeof(_impl_.cone_end_radius_));
  }
  if (cached_has_bits & 0x00030000u) {
    _impl_.cone_length_ = 0;
    _impl_.entity_handle_ = 16777215u;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_AddFan::_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 bool active = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_active(&has_bits);
          _impl_.active_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector bounds_mins = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_bounds_mins(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector bounds_maxs = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_bounds_maxs(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_origin = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_origin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_origin_offset = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_origin_offset(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_direction = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_direction(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float force = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 61)) {
          _Internal::set_has_force(&has_bits);
          _impl_.force_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional string fan_force_curve = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          auto str = _internal_mutable_fan_force_curve();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.AddFan.fan_force_curve");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool falloff = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_falloff(&has_bits);
          _impl_.falloff_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool pull_towards_point = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_pull_towards_point(&has_bits);
          _impl_.pull_towards_point_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float curve_min_dist = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 93)) {
          _Internal::set_has_curve_min_dist(&has_bits);
          _impl_.curve_min_dist_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float curve_max_dist = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 101)) {
          _Internal::set_has_curve_max_dist(&has_bits);
          _impl_.curve_max_dist_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 fan_type = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
          _Internal::set_has_fan_type(&has_bits);
          _impl_.fan_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float cone_start_radius = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 117)) {
          _Internal::set_has_cone_start_radius(&has_bits);
          _impl_.cone_start_radius_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float cone_end_radius = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 125)) {
          _Internal::set_has_cone_end_radius(&has_bits);
          _impl_.cone_end_radius_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float cone_length = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 133)) {
          _Internal::set_has_cone_length(&has_bits);
          _impl_.cone_length_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 entity_handle = 17 [default = 16777215];
      case 17:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 136)) {
          _Internal::set_has_entity_handle(&has_bits);
          _impl_.entity_handle_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string attachment_name = 18;
      case 18:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 146)) {
          auto str = _internal_mutable_attachment_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_ParticleManager.AddFan.attachment_name");
          #endif  // !NDEBUG
        } 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* CUserMsg_ParticleManager_AddFan::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.AddFan)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool active = 1;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_active(), target);
  }

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

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

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

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

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

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

  // optional string fan_force_curve = 8;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_fan_force_curve().data(), static_cast<int>(this->_internal_fan_force_curve().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.AddFan.fan_force_curve");
    target = stream->WriteStringMaybeAliased(
        8, this->_internal_fan_force_curve(), target);
  }

  // optional bool falloff = 9;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(9, this->_internal_falloff(), target);
  }

  // optional bool pull_towards_point = 10;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(10, this->_internal_pull_towards_point(), target);
  }

  // optional float curve_min_dist = 11;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(11, this->_internal_curve_min_dist(), target);
  }

  // optional float curve_max_dist = 12;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(12, this->_internal_curve_max_dist(), target);
  }

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

  // optional float cone_start_radius = 14;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(14, this->_internal_cone_start_radius(), target);
  }

  // optional float cone_end_radius = 15;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(15, this->_internal_cone_end_radius(), target);
  }

  // optional float cone_length = 16;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(16, this->_internal_cone_length(), target);
  }

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

  // optional string attachment_name = 18;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_attachment_name().data(), static_cast<int>(this->_internal_attachment_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_ParticleManager.AddFan.attachment_name");
    target = stream->WriteStringMaybeAliased(
        18, this->_internal_attachment_name(), 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:CUserMsg_ParticleManager.AddFan)
  return target;
}

size_t CUserMsg_ParticleManager_AddFan::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.AddFan)
  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 string fan_force_curve = 8;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_fan_force_curve());
    }

    // optional string attachment_name = 18;
    if (cached_has_bits & 0x00000002u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_attachment_name());
    }

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

    // optional .CMsgVector bounds_maxs = 3;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.bounds_maxs_);
    }

    // optional .CMsgVector fan_origin = 4;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fan_origin_);
    }

    // optional .CMsgVector fan_origin_offset = 5;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fan_origin_offset_);
    }

    // optional .CMsgVector fan_direction = 6;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fan_direction_);
    }

    // optional bool active = 1;
    if (cached_has_bits & 0x00000080u) {
      total_size += 1 + 1;
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional bool falloff = 9;
    if (cached_has_bits & 0x00000100u) {
      total_size += 1 + 1;
    }

    // optional bool pull_towards_point = 10;
    if (cached_has_bits & 0x00000200u) {
      total_size += 1 + 1;
    }

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

    // optional float curve_min_dist = 11;
    if (cached_has_bits & 0x00000800u) {
      total_size += 1 + 4;
    }

    // optional float curve_max_dist = 12;
    if (cached_has_bits & 0x00001000u) {
      total_size += 1 + 4;
    }

    // optional uint32 fan_type = 13;
    if (cached_has_bits & 0x00002000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_fan_type());
    }

    // optional float cone_start_radius = 14;
    if (cached_has_bits & 0x00004000u) {
      total_size += 1 + 4;
    }

    // optional float cone_end_radius = 15;
    if (cached_has_bits & 0x00008000u) {
      total_size += 1 + 4;
    }

  }
  if (cached_has_bits & 0x00030000u) {
    // optional float cone_length = 16;
    if (cached_has_bits & 0x00010000u) {
      total_size += 2 + 4;
    }

    // optional uint32 entity_handle = 17 [default = 16777215];
    if (cached_has_bits & 0x00020000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_entity_handle());
    }

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

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


void CUserMsg_ParticleManager_AddFan::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_AddFan*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_AddFan&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.AddFan)
  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_set_fan_force_curve(from._internal_fan_force_curve());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_attachment_name(from._internal_attachment_name());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_bounds_mins()->::CMsgVector::MergeFrom(
          from._internal_bounds_mins());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_bounds_maxs()->::CMsgVector::MergeFrom(
          from._internal_bounds_maxs());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_mutable_fan_origin()->::CMsgVector::MergeFrom(
          from._internal_fan_origin());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_mutable_fan_origin_offset()->::CMsgVector::MergeFrom(
          from._internal_fan_origin_offset());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_mutable_fan_direction()->::CMsgVector::MergeFrom(
          from._internal_fan_direction());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.active_ = from._impl_.active_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.falloff_ = from._impl_.falloff_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.pull_towards_point_ = from._impl_.pull_towards_point_;
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_impl_.force_ = from._impl_.force_;
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.curve_min_dist_ = from._impl_.curve_min_dist_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.curve_max_dist_ = from._impl_.curve_max_dist_;
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.fan_type_ = from._impl_.fan_type_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.cone_start_radius_ = from._impl_.cone_start_radius_;
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_impl_.cone_end_radius_ = from._impl_.cone_end_radius_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00030000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_impl_.cone_length_ = from._impl_.cone_length_;
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_impl_.entity_handle_ = from._impl_.entity_handle_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CUserMsg_ParticleManager_AddFan::InternalSwap(CUserMsg_ParticleManager_AddFan* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.fan_force_curve_, lhs_arena,
      &other->_impl_.fan_force_curve_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.attachment_name_, lhs_arena,
      &other->_impl_.attachment_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_AddFan, _impl_.cone_length_)
      + sizeof(CUserMsg_ParticleManager_AddFan::_impl_.cone_length_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_AddFan, _impl_.bounds_mins_)>(
          reinterpret_cast<char*>(&_impl_.bounds_mins_),
          reinterpret_cast<char*>(&other->_impl_.bounds_mins_));
  swap(_impl_.entity_handle_, other->_impl_.entity_handle_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_AddFan::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[76]);
}

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

class CUserMsg_ParticleManager_UpdateFan::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_UpdateFan>()._impl_._has_bits_);
  static void set_has_active(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static const ::CMsgVector& fan_origin(const CUserMsg_ParticleManager_UpdateFan* msg);
  static void set_has_fan_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgVector& fan_origin_offset(const CUserMsg_ParticleManager_UpdateFan* msg);
  static void set_has_fan_origin_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& fan_direction(const CUserMsg_ParticleManager_UpdateFan* msg);
  static void set_has_fan_direction(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_fan_ramp_ratio(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static const ::CMsgVector& bounds_mins(const CUserMsg_ParticleManager_UpdateFan* msg);
  static void set_has_bounds_mins(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static const ::CMsgVector& bounds_maxs(const CUserMsg_ParticleManager_UpdateFan* msg);
  static void set_has_bounds_maxs(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_UpdateFan::_Internal::fan_origin(const CUserMsg_ParticleManager_UpdateFan* msg) {
  return *msg->_impl_.fan_origin_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateFan::_Internal::fan_origin_offset(const CUserMsg_ParticleManager_UpdateFan* msg) {
  return *msg->_impl_.fan_origin_offset_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateFan::_Internal::fan_direction(const CUserMsg_ParticleManager_UpdateFan* msg) {
  return *msg->_impl_.fan_direction_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateFan::_Internal::bounds_mins(const CUserMsg_ParticleManager_UpdateFan* msg) {
  return *msg->_impl_.bounds_mins_;
}
const ::CMsgVector&
CUserMsg_ParticleManager_UpdateFan::_Internal::bounds_maxs(const CUserMsg_ParticleManager_UpdateFan* msg) {
  return *msg->_impl_.bounds_maxs_;
}
void CUserMsg_ParticleManager_UpdateFan::clear_fan_origin() {
  if (_impl_.fan_origin_ != nullptr) _impl_.fan_origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
void CUserMsg_ParticleManager_UpdateFan::clear_fan_origin_offset() {
  if (_impl_.fan_origin_offset_ != nullptr) _impl_.fan_origin_offset_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
void CUserMsg_ParticleManager_UpdateFan::clear_fan_direction() {
  if (_impl_.fan_direction_ != nullptr) _impl_.fan_direction_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
void CUserMsg_ParticleManager_UpdateFan::clear_bounds_mins() {
  if (_impl_.bounds_mins_ != nullptr) _impl_.bounds_mins_->Clear();
  _impl_._has_bits_[0] &= ~0x00000008u;
}
void CUserMsg_ParticleManager_UpdateFan::clear_bounds_maxs() {
  if (_impl_.bounds_maxs_ != nullptr) _impl_.bounds_maxs_->Clear();
  _impl_._has_bits_[0] &= ~0x00000010u;
}
CUserMsg_ParticleManager_UpdateFan::CUserMsg_ParticleManager_UpdateFan(::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:CUserMsg_ParticleManager.UpdateFan)
}
CUserMsg_ParticleManager_UpdateFan::CUserMsg_ParticleManager_UpdateFan(const CUserMsg_ParticleManager_UpdateFan& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_UpdateFan* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.fan_origin_){nullptr}
    , decltype(_impl_.fan_origin_offset_){nullptr}
    , decltype(_impl_.fan_direction_){nullptr}
    , decltype(_impl_.bounds_mins_){nullptr}
    , decltype(_impl_.bounds_maxs_){nullptr}
    , decltype(_impl_.active_){}
    , decltype(_impl_.fan_ramp_ratio_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_fan_origin()) {
    _this->_impl_.fan_origin_ = new ::CMsgVector(*from._impl_.fan_origin_);
  }
  if (from._internal_has_fan_origin_offset()) {
    _this->_impl_.fan_origin_offset_ = new ::CMsgVector(*from._impl_.fan_origin_offset_);
  }
  if (from._internal_has_fan_direction()) {
    _this->_impl_.fan_direction_ = new ::CMsgVector(*from._impl_.fan_direction_);
  }
  if (from._internal_has_bounds_mins()) {
    _this->_impl_.bounds_mins_ = new ::CMsgVector(*from._impl_.bounds_mins_);
  }
  if (from._internal_has_bounds_maxs()) {
    _this->_impl_.bounds_maxs_ = new ::CMsgVector(*from._impl_.bounds_maxs_);
  }
  ::memcpy(&_impl_.active_, &from._impl_.active_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.fan_ramp_ratio_) -
    reinterpret_cast<char*>(&_impl_.active_)) + sizeof(_impl_.fan_ramp_ratio_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.UpdateFan)
}

inline void CUserMsg_ParticleManager_UpdateFan::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_.fan_origin_){nullptr}
    , decltype(_impl_.fan_origin_offset_){nullptr}
    , decltype(_impl_.fan_direction_){nullptr}
    , decltype(_impl_.bounds_mins_){nullptr}
    , decltype(_impl_.bounds_maxs_){nullptr}
    , decltype(_impl_.active_){false}
    , decltype(_impl_.fan_ramp_ratio_){0}
  };
}

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

inline void CUserMsg_ParticleManager_UpdateFan::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.fan_origin_;
  if (this != internal_default_instance()) delete _impl_.fan_origin_offset_;
  if (this != internal_default_instance()) delete _impl_.fan_direction_;
  if (this != internal_default_instance()) delete _impl_.bounds_mins_;
  if (this != internal_default_instance()) delete _impl_.bounds_maxs_;
}

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

void CUserMsg_ParticleManager_UpdateFan::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.UpdateFan)
  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 & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.fan_origin_ != nullptr);
      _impl_.fan_origin_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.fan_origin_offset_ != nullptr);
      _impl_.fan_origin_offset_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.fan_direction_ != nullptr);
      _impl_.fan_direction_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.bounds_mins_ != nullptr);
      _impl_.bounds_mins_->Clear();
    }
    if (cached_has_bits & 0x00000010u) {
      GOOGLE_DCHECK(_impl_.bounds_maxs_ != nullptr);
      _impl_.bounds_maxs_->Clear();
    }
  }
  if (cached_has_bits & 0x00000060u) {
    ::memset(&_impl_.active_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.fan_ramp_ratio_) -
        reinterpret_cast<char*>(&_impl_.active_)) + sizeof(_impl_.fan_ramp_ratio_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_UpdateFan::_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 bool active = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_active(&has_bits);
          _impl_.active_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_origin = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_origin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_origin_offset = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_origin_offset(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector fan_direction = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_fan_direction(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector bounds_mins = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_bounds_mins(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector bounds_maxs = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_bounds_maxs(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float fan_ramp_ratio = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 61)) {
          _Internal::set_has_fan_ramp_ratio(&has_bits);
          _impl_.fan_ramp_ratio_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMsg_ParticleManager_UpdateFan::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.UpdateFan)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional bool active = 1;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_active(), target);
  }

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

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

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

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

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

  // optional float fan_ramp_ratio = 7;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(7, this->_internal_fan_ramp_ratio(), 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:CUserMsg_ParticleManager.UpdateFan)
  return target;
}

size_t CUserMsg_ParticleManager_UpdateFan::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.UpdateFan)
  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 fan_origin = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fan_origin_);
    }

    // optional .CMsgVector fan_origin_offset = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.fan_origin_offset_);
    }

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

    // optional .CMsgVector bounds_mins = 5;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.bounds_mins_);
    }

    // optional .CMsgVector bounds_maxs = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.bounds_maxs_);
    }

    // optional bool active = 1;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 + 1;
    }

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

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

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


void CUserMsg_ParticleManager_UpdateFan::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_UpdateFan*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_UpdateFan&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.UpdateFan)
  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_fan_origin()->::CMsgVector::MergeFrom(
          from._internal_fan_origin());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_fan_origin_offset()->::CMsgVector::MergeFrom(
          from._internal_fan_origin_offset());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_fan_direction()->::CMsgVector::MergeFrom(
          from._internal_fan_direction());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_bounds_mins()->::CMsgVector::MergeFrom(
          from._internal_bounds_mins());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_mutable_bounds_maxs()->::CMsgVector::MergeFrom(
          from._internal_bounds_maxs());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.active_ = from._impl_.active_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.fan_ramp_ratio_ = from._impl_.fan_ramp_ratio_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

bool CUserMsg_ParticleManager_UpdateFan::IsInitialized() const {
  return true;
}

void CUserMsg_ParticleManager_UpdateFan::InternalSwap(CUserMsg_ParticleManager_UpdateFan* 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(CUserMsg_ParticleManager_UpdateFan, _impl_.fan_ramp_ratio_)
      + sizeof(CUserMsg_ParticleManager_UpdateFan::_impl_.fan_ramp_ratio_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_UpdateFan, _impl_.fan_origin_)>(
          reinterpret_cast<char*>(&_impl_.fan_origin_),
          reinterpret_cast<char*>(&other->_impl_.fan_origin_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_UpdateFan::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[77]);
}

// ===================================================================

class CUserMsg_ParticleManager_RemoveFan::_Internal {
 public:
};

CUserMsg_ParticleManager_RemoveFan::CUserMsg_ParticleManager_RemoveFan(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) {
  // @@protoc_insertion_point(arena_constructor:CUserMsg_ParticleManager.RemoveFan)
}
CUserMsg_ParticleManager_RemoveFan::CUserMsg_ParticleManager_RemoveFan(const CUserMsg_ParticleManager_RemoveFan& from)
  : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() {
  CUserMsg_ParticleManager_RemoveFan* const _this = this; (void)_this;
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.RemoveFan)
}





const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_ParticleManager_RemoveFan::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl,
    ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl,
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_RemoveFan::GetClassData() const { return &_class_data_; }







::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_RemoveFan::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[78]);
}

// ===================================================================

class CUserMsg_ParticleManager_SetParticleClusterGrowth::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager_SetParticleClusterGrowth>()._impl_._has_bits_);
  static void set_has_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CMsgVector& origin(const CUserMsg_ParticleManager_SetParticleClusterGrowth* msg);
  static void set_has_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CMsgVector&
CUserMsg_ParticleManager_SetParticleClusterGrowth::_Internal::origin(const CUserMsg_ParticleManager_SetParticleClusterGrowth* msg) {
  return *msg->_impl_.origin_;
}
void CUserMsg_ParticleManager_SetParticleClusterGrowth::clear_origin() {
  if (_impl_.origin_ != nullptr) _impl_.origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000001u;
}
CUserMsg_ParticleManager_SetParticleClusterGrowth::CUserMsg_ParticleManager_SetParticleClusterGrowth(::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:CUserMsg_ParticleManager.SetParticleClusterGrowth)
}
CUserMsg_ParticleManager_SetParticleClusterGrowth::CUserMsg_ParticleManager_SetParticleClusterGrowth(const CUserMsg_ParticleManager_SetParticleClusterGrowth& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager_SetParticleClusterGrowth* 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_.duration_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_origin()) {
    _this->_impl_.origin_ = new ::CMsgVector(*from._impl_.origin_);
  }
  _this->_impl_.duration_ = from._impl_.duration_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager.SetParticleClusterGrowth)
}

inline void CUserMsg_ParticleManager_SetParticleClusterGrowth::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_.duration_){0}
  };
}

CUserMsg_ParticleManager_SetParticleClusterGrowth::~CUserMsg_ParticleManager_SetParticleClusterGrowth() {
  // @@protoc_insertion_point(destructor:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMsg_ParticleManager_SetParticleClusterGrowth::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.origin_;
}

void CUserMsg_ParticleManager_SetParticleClusterGrowth::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMsg_ParticleManager_SetParticleClusterGrowth::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  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_.origin_ != nullptr);
    _impl_.origin_->Clear();
  }
  _impl_.duration_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager_SetParticleClusterGrowth::_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 float duration = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_duration(&has_bits);
          _impl_.duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector origin = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_origin(), 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* CUserMsg_ParticleManager_SetParticleClusterGrowth::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float duration = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_duration(), target);
  }

  // optional .CMsgVector origin = 2;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::origin(this),
        _Internal::origin(this).GetCachedSize(), target, stream);
  }

  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:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  return target;
}

size_t CUserMsg_ParticleManager_SetParticleClusterGrowth::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  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 & 0x00000003u) {
    // optional .CMsgVector origin = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.origin_);
    }

    // optional float duration = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_ParticleManager_SetParticleClusterGrowth::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_ParticleManager_SetParticleClusterGrowth::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager_SetParticleClusterGrowth::GetClassData() const { return &_class_data_; }


void CUserMsg_ParticleManager_SetParticleClusterGrowth::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager_SetParticleClusterGrowth*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager_SetParticleClusterGrowth&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_origin()->::CMsgVector::MergeFrom(
          from._internal_origin());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.duration_ = from._impl_.duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager_SetParticleClusterGrowth::CopyFrom(const CUserMsg_ParticleManager_SetParticleClusterGrowth& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager.SetParticleClusterGrowth)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMsg_ParticleManager_SetParticleClusterGrowth::IsInitialized() const {
  return true;
}

void CUserMsg_ParticleManager_SetParticleClusterGrowth::InternalSwap(CUserMsg_ParticleManager_SetParticleClusterGrowth* 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(CUserMsg_ParticleManager_SetParticleClusterGrowth, _impl_.duration_)
      + sizeof(CUserMsg_ParticleManager_SetParticleClusterGrowth::_impl_.duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager_SetParticleClusterGrowth, _impl_.origin_)>(
          reinterpret_cast<char*>(&_impl_.origin_),
          reinterpret_cast<char*>(&other->_impl_.origin_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager_SetParticleClusterGrowth::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[79]);
}

// ===================================================================

class CUserMsg_ParticleManager::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_ParticleManager>()._impl_._has_bits_);
  static void set_has_type(HasBits* has_bits) {
    (*has_bits)[1] |= 128u;
  }
  static void set_has_index(HasBits* has_bits) {
    (*has_bits)[1] |= 256u;
  }
  static const ::CUserMsg_ParticleManager_ReleaseParticleIndex& release_particle_index(const CUserMsg_ParticleManager* msg);
  static void set_has_release_particle_index(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CUserMsg_ParticleManager_CreateParticle& create_particle(const CUserMsg_ParticleManager* msg);
  static void set_has_create_particle(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static const ::CUserMsg_ParticleManager_DestroyParticle& destroy_particle(const CUserMsg_ParticleManager* msg);
  static void set_has_destroy_particle(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static const ::CUserMsg_ParticleManager_DestroyParticleInvolving& destroy_particle_involving(const CUserMsg_ParticleManager* msg);
  static void set_has_destroy_particle_involving(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE& update_particle(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE& update_particle_fwd(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_fwd(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE& update_particle_orient(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_orient(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleFallback& update_particle_fallback(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_fallback(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleOffset& update_particle_offset(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleEnt& update_particle_ent(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_ent(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleShouldDraw& update_particle_should_draw(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_should_draw(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleSetFrozen& update_particle_set_frozen(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_set_frozen(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static const ::CUserMsg_ParticleManager_ChangeControlPointAttachment& change_control_point_attachment(const CUserMsg_ParticleManager* msg);
  static void set_has_change_control_point_attachment(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static const ::CUserMsg_ParticleManager_UpdateEntityPosition& update_entity_position(const CUserMsg_ParticleManager* msg);
  static void set_has_update_entity_position(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static const ::CUserMsg_ParticleManager_SetParticleFoWProperties& set_particle_fow_properties(const CUserMsg_ParticleManager* msg);
  static void set_has_set_particle_fow_properties(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static const ::CUserMsg_ParticleManager_SetParticleText& set_particle_text(const CUserMsg_ParticleManager* msg);
  static void set_has_set_particle_text(HasBits* has_bits) {
    (*has_bits)[0] |= 32768u;
  }
  static const ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW& set_particle_should_check_fow(const CUserMsg_ParticleManager* msg);
  static void set_has_set_particle_should_check_fow(HasBits* has_bits) {
    (*has_bits)[0] |= 65536u;
  }
  static const ::CUserMsg_ParticleManager_SetControlPointModel& set_control_point_model(const CUserMsg_ParticleManager* msg);
  static void set_has_set_control_point_model(HasBits* has_bits) {
    (*has_bits)[0] |= 131072u;
  }
  static const ::CUserMsg_ParticleManager_SetControlPointSnapshot& set_control_point_snapshot(const CUserMsg_ParticleManager* msg);
  static void set_has_set_control_point_snapshot(HasBits* has_bits) {
    (*has_bits)[0] |= 262144u;
  }
  static const ::CUserMsg_ParticleManager_SetTextureAttribute& set_texture_attribute(const CUserMsg_ParticleManager* msg);
  static void set_has_set_texture_attribute(HasBits* has_bits) {
    (*has_bits)[0] |= 524288u;
  }
  static const ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag& set_scene_object_generic_flag(const CUserMsg_ParticleManager* msg);
  static void set_has_set_scene_object_generic_flag(HasBits* has_bits) {
    (*has_bits)[0] |= 1048576u;
  }
  static const ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat& set_scene_object_tint_and_desat(const CUserMsg_ParticleManager* msg);
  static void set_has_set_scene_object_tint_and_desat(HasBits* has_bits) {
    (*has_bits)[0] |= 2097152u;
  }
  static const ::CUserMsg_ParticleManager_DestroyParticleNamed& destroy_particle_named(const CUserMsg_ParticleManager* msg);
  static void set_has_destroy_particle_named(HasBits* has_bits) {
    (*has_bits)[0] |= 4194304u;
  }
  static const ::CUserMsg_ParticleManager_ParticleSkipToTime& particle_skip_to_time(const CUserMsg_ParticleManager* msg);
  static void set_has_particle_skip_to_time(HasBits* has_bits) {
    (*has_bits)[0] |= 8388608u;
  }
  static const ::CUserMsg_ParticleManager_ParticleCanFreeze& particle_can_freeze(const CUserMsg_ParticleManager* msg);
  static void set_has_particle_can_freeze(HasBits* has_bits) {
    (*has_bits)[0] |= 16777216u;
  }
  static const ::CUserMsg_ParticleManager_SetParticleNamedValueContext& set_named_value_context(const CUserMsg_ParticleManager* msg);
  static void set_has_set_named_value_context(HasBits* has_bits) {
    (*has_bits)[0] |= 33554432u;
  }
  static const ::CUserMsg_ParticleManager_UpdateParticleTransform& update_particle_transform(const CUserMsg_ParticleManager* msg);
  static void set_has_update_particle_transform(HasBits* has_bits) {
    (*has_bits)[0] |= 67108864u;
  }
  static const ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride& particle_freeze_transition_override(const CUserMsg_ParticleManager* msg);
  static void set_has_particle_freeze_transition_override(HasBits* has_bits) {
    (*has_bits)[0] |= 134217728u;
  }
  static const ::CUserMsg_ParticleManager_FreezeParticleInvolving& freeze_particle_involving(const CUserMsg_ParticleManager* msg);
  static void set_has_freeze_particle_involving(HasBits* has_bits) {
    (*has_bits)[0] |= 268435456u;
  }
  static const ::CUserMsg_ParticleManager_AddModellistOverrideElement& add_modellist_override_element(const CUserMsg_ParticleManager* msg);
  static void set_has_add_modellist_override_element(HasBits* has_bits) {
    (*has_bits)[0] |= 536870912u;
  }
  static const ::CUserMsg_ParticleManager_ClearModellistOverride& clear_modellist_override(const CUserMsg_ParticleManager* msg);
  static void set_has_clear_modellist_override(HasBits* has_bits) {
    (*has_bits)[0] |= 1073741824u;
  }
  static const ::CUserMsg_ParticleManager_CreatePhysicsSim& create_physics_sim(const CUserMsg_ParticleManager* msg);
  static void set_has_create_physics_sim(HasBits* has_bits) {
    (*has_bits)[0] |= 2147483648u;
  }
  static const ::CUserMsg_ParticleManager_DestroyPhysicsSim& destroy_physics_sim(const CUserMsg_ParticleManager* msg);
  static void set_has_destroy_physics_sim(HasBits* has_bits) {
    (*has_bits)[1] |= 1u;
  }
  static const ::CUserMsg_ParticleManager_SetVData& set_vdata(const CUserMsg_ParticleManager* msg);
  static void set_has_set_vdata(HasBits* has_bits) {
    (*has_bits)[1] |= 2u;
  }
  static const ::CUserMsg_ParticleManager_SetMaterialOverride& set_material_override(const CUserMsg_ParticleManager* msg);
  static void set_has_set_material_override(HasBits* has_bits) {
    (*has_bits)[1] |= 4u;
  }
  static const ::CUserMsg_ParticleManager_AddFan& add_fan(const CUserMsg_ParticleManager* msg);
  static void set_has_add_fan(HasBits* has_bits) {
    (*has_bits)[1] |= 8u;
  }
  static const ::CUserMsg_ParticleManager_UpdateFan& update_fan(const CUserMsg_ParticleManager* msg);
  static void set_has_update_fan(HasBits* has_bits) {
    (*has_bits)[1] |= 16u;
  }
  static const ::CUserMsg_ParticleManager_SetParticleClusterGrowth& set_particle_cluster_growth(const CUserMsg_ParticleManager* msg);
  static void set_has_set_particle_cluster_growth(HasBits* has_bits) {
    (*has_bits)[1] |= 32u;
  }
  static const ::CUserMsg_ParticleManager_RemoveFan& remove_fan(const CUserMsg_ParticleManager* msg);
  static void set_has_remove_fan(HasBits* has_bits) {
    (*has_bits)[1] |= 64u;
  }
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[1] & 0x00000180) ^ 0x00000180) != 0;
  }
};

const ::CUserMsg_ParticleManager_ReleaseParticleIndex&
CUserMsg_ParticleManager::_Internal::release_particle_index(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.release_particle_index_;
}
const ::CUserMsg_ParticleManager_CreateParticle&
CUserMsg_ParticleManager::_Internal::create_particle(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.create_particle_;
}
const ::CUserMsg_ParticleManager_DestroyParticle&
CUserMsg_ParticleManager::_Internal::destroy_particle(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.destroy_particle_;
}
const ::CUserMsg_ParticleManager_DestroyParticleInvolving&
CUserMsg_ParticleManager::_Internal::destroy_particle_involving(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.destroy_particle_involving_;
}
const ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE&
CUserMsg_ParticleManager::_Internal::update_particle(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_;
}
const ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE&
CUserMsg_ParticleManager::_Internal::update_particle_fwd(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_fwd_;
}
const ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE&
CUserMsg_ParticleManager::_Internal::update_particle_orient(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_orient_;
}
const ::CUserMsg_ParticleManager_UpdateParticleFallback&
CUserMsg_ParticleManager::_Internal::update_particle_fallback(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_fallback_;
}
const ::CUserMsg_ParticleManager_UpdateParticleOffset&
CUserMsg_ParticleManager::_Internal::update_particle_offset(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_offset_;
}
const ::CUserMsg_ParticleManager_UpdateParticleEnt&
CUserMsg_ParticleManager::_Internal::update_particle_ent(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_ent_;
}
const ::CUserMsg_ParticleManager_UpdateParticleShouldDraw&
CUserMsg_ParticleManager::_Internal::update_particle_should_draw(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_should_draw_;
}
const ::CUserMsg_ParticleManager_UpdateParticleSetFrozen&
CUserMsg_ParticleManager::_Internal::update_particle_set_frozen(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_set_frozen_;
}
const ::CUserMsg_ParticleManager_ChangeControlPointAttachment&
CUserMsg_ParticleManager::_Internal::change_control_point_attachment(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.change_control_point_attachment_;
}
const ::CUserMsg_ParticleManager_UpdateEntityPosition&
CUserMsg_ParticleManager::_Internal::update_entity_position(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_entity_position_;
}
const ::CUserMsg_ParticleManager_SetParticleFoWProperties&
CUserMsg_ParticleManager::_Internal::set_particle_fow_properties(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_particle_fow_properties_;
}
const ::CUserMsg_ParticleManager_SetParticleText&
CUserMsg_ParticleManager::_Internal::set_particle_text(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_particle_text_;
}
const ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW&
CUserMsg_ParticleManager::_Internal::set_particle_should_check_fow(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_particle_should_check_fow_;
}
const ::CUserMsg_ParticleManager_SetControlPointModel&
CUserMsg_ParticleManager::_Internal::set_control_point_model(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_control_point_model_;
}
const ::CUserMsg_ParticleManager_SetControlPointSnapshot&
CUserMsg_ParticleManager::_Internal::set_control_point_snapshot(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_control_point_snapshot_;
}
const ::CUserMsg_ParticleManager_SetTextureAttribute&
CUserMsg_ParticleManager::_Internal::set_texture_attribute(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_texture_attribute_;
}
const ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag&
CUserMsg_ParticleManager::_Internal::set_scene_object_generic_flag(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_scene_object_generic_flag_;
}
const ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat&
CUserMsg_ParticleManager::_Internal::set_scene_object_tint_and_desat(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_scene_object_tint_and_desat_;
}
const ::CUserMsg_ParticleManager_DestroyParticleNamed&
CUserMsg_ParticleManager::_Internal::destroy_particle_named(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.destroy_particle_named_;
}
const ::CUserMsg_ParticleManager_ParticleSkipToTime&
CUserMsg_ParticleManager::_Internal::particle_skip_to_time(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.particle_skip_to_time_;
}
const ::CUserMsg_ParticleManager_ParticleCanFreeze&
CUserMsg_ParticleManager::_Internal::particle_can_freeze(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.particle_can_freeze_;
}
const ::CUserMsg_ParticleManager_SetParticleNamedValueContext&
CUserMsg_ParticleManager::_Internal::set_named_value_context(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_named_value_context_;
}
const ::CUserMsg_ParticleManager_UpdateParticleTransform&
CUserMsg_ParticleManager::_Internal::update_particle_transform(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_particle_transform_;
}
const ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride&
CUserMsg_ParticleManager::_Internal::particle_freeze_transition_override(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.particle_freeze_transition_override_;
}
const ::CUserMsg_ParticleManager_FreezeParticleInvolving&
CUserMsg_ParticleManager::_Internal::freeze_particle_involving(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.freeze_particle_involving_;
}
const ::CUserMsg_ParticleManager_AddModellistOverrideElement&
CUserMsg_ParticleManager::_Internal::add_modellist_override_element(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.add_modellist_override_element_;
}
const ::CUserMsg_ParticleManager_ClearModellistOverride&
CUserMsg_ParticleManager::_Internal::clear_modellist_override(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.clear_modellist_override_;
}
const ::CUserMsg_ParticleManager_CreatePhysicsSim&
CUserMsg_ParticleManager::_Internal::create_physics_sim(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.create_physics_sim_;
}
const ::CUserMsg_ParticleManager_DestroyPhysicsSim&
CUserMsg_ParticleManager::_Internal::destroy_physics_sim(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.destroy_physics_sim_;
}
const ::CUserMsg_ParticleManager_SetVData&
CUserMsg_ParticleManager::_Internal::set_vdata(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_vdata_;
}
const ::CUserMsg_ParticleManager_SetMaterialOverride&
CUserMsg_ParticleManager::_Internal::set_material_override(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_material_override_;
}
const ::CUserMsg_ParticleManager_AddFan&
CUserMsg_ParticleManager::_Internal::add_fan(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.add_fan_;
}
const ::CUserMsg_ParticleManager_UpdateFan&
CUserMsg_ParticleManager::_Internal::update_fan(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.update_fan_;
}
const ::CUserMsg_ParticleManager_SetParticleClusterGrowth&
CUserMsg_ParticleManager::_Internal::set_particle_cluster_growth(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.set_particle_cluster_growth_;
}
const ::CUserMsg_ParticleManager_RemoveFan&
CUserMsg_ParticleManager::_Internal::remove_fan(const CUserMsg_ParticleManager* msg) {
  return *msg->_impl_.remove_fan_;
}
CUserMsg_ParticleManager::CUserMsg_ParticleManager(::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:CUserMsg_ParticleManager)
}
CUserMsg_ParticleManager::CUserMsg_ParticleManager(const CUserMsg_ParticleManager& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_ParticleManager* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      /*decltype(_impl_._extensions_)*/{}
    , decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.release_particle_index_){nullptr}
    , decltype(_impl_.create_particle_){nullptr}
    , decltype(_impl_.destroy_particle_){nullptr}
    , decltype(_impl_.destroy_particle_involving_){nullptr}
    , decltype(_impl_.update_particle_){nullptr}
    , decltype(_impl_.update_particle_fwd_){nullptr}
    , decltype(_impl_.update_particle_orient_){nullptr}
    , decltype(_impl_.update_particle_fallback_){nullptr}
    , decltype(_impl_.update_particle_offset_){nullptr}
    , decltype(_impl_.update_particle_ent_){nullptr}
    , decltype(_impl_.update_particle_should_draw_){nullptr}
    , decltype(_impl_.update_particle_set_frozen_){nullptr}
    , decltype(_impl_.change_control_point_attachment_){nullptr}
    , decltype(_impl_.update_entity_position_){nullptr}
    , decltype(_impl_.set_particle_fow_properties_){nullptr}
    , decltype(_impl_.set_particle_text_){nullptr}
    , decltype(_impl_.set_particle_should_check_fow_){nullptr}
    , decltype(_impl_.set_control_point_model_){nullptr}
    , decltype(_impl_.set_control_point_snapshot_){nullptr}
    , decltype(_impl_.set_texture_attribute_){nullptr}
    , decltype(_impl_.set_scene_object_generic_flag_){nullptr}
    , decltype(_impl_.set_scene_object_tint_and_desat_){nullptr}
    , decltype(_impl_.destroy_particle_named_){nullptr}
    , decltype(_impl_.particle_skip_to_time_){nullptr}
    , decltype(_impl_.particle_can_freeze_){nullptr}
    , decltype(_impl_.set_named_value_context_){nullptr}
    , decltype(_impl_.update_particle_transform_){nullptr}
    , decltype(_impl_.particle_freeze_transition_override_){nullptr}
    , decltype(_impl_.freeze_particle_involving_){nullptr}
    , decltype(_impl_.add_modellist_override_element_){nullptr}
    , decltype(_impl_.clear_modellist_override_){nullptr}
    , decltype(_impl_.create_physics_sim_){nullptr}
    , decltype(_impl_.destroy_physics_sim_){nullptr}
    , decltype(_impl_.set_vdata_){nullptr}
    , decltype(_impl_.set_material_override_){nullptr}
    , decltype(_impl_.add_fan_){nullptr}
    , decltype(_impl_.update_fan_){nullptr}
    , decltype(_impl_.set_particle_cluster_growth_){nullptr}
    , decltype(_impl_.remove_fan_){nullptr}
    , decltype(_impl_.type_){}
    , decltype(_impl_.index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_._extensions_.MergeFrom(internal_default_instance(), from._impl_._extensions_);
  if (from._internal_has_release_particle_index()) {
    _this->_impl_.release_particle_index_ = new ::CUserMsg_ParticleManager_ReleaseParticleIndex(*from._impl_.release_particle_index_);
  }
  if (from._internal_has_create_particle()) {
    _this->_impl_.create_particle_ = new ::CUserMsg_ParticleManager_CreateParticle(*from._impl_.create_particle_);
  }
  if (from._internal_has_destroy_particle()) {
    _this->_impl_.destroy_particle_ = new ::CUserMsg_ParticleManager_DestroyParticle(*from._impl_.destroy_particle_);
  }
  if (from._internal_has_destroy_particle_involving()) {
    _this->_impl_.destroy_particle_involving_ = new ::CUserMsg_ParticleManager_DestroyParticleInvolving(*from._impl_.destroy_particle_involving_);
  }
  if (from._internal_has_update_particle()) {
    _this->_impl_.update_particle_ = new ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE(*from._impl_.update_particle_);
  }
  if (from._internal_has_update_particle_fwd()) {
    _this->_impl_.update_particle_fwd_ = new ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE(*from._impl_.update_particle_fwd_);
  }
  if (from._internal_has_update_particle_orient()) {
    _this->_impl_.update_particle_orient_ = new ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE(*from._impl_.update_particle_orient_);
  }
  if (from._internal_has_update_particle_fallback()) {
    _this->_impl_.update_particle_fallback_ = new ::CUserMsg_ParticleManager_UpdateParticleFallback(*from._impl_.update_particle_fallback_);
  }
  if (from._internal_has_update_particle_offset()) {
    _this->_impl_.update_particle_offset_ = new ::CUserMsg_ParticleManager_UpdateParticleOffset(*from._impl_.update_particle_offset_);
  }
  if (from._internal_has_update_particle_ent()) {
    _this->_impl_.update_particle_ent_ = new ::CUserMsg_ParticleManager_UpdateParticleEnt(*from._impl_.update_particle_ent_);
  }
  if (from._internal_has_update_particle_should_draw()) {
    _this->_impl_.update_particle_should_draw_ = new ::CUserMsg_ParticleManager_UpdateParticleShouldDraw(*from._impl_.update_particle_should_draw_);
  }
  if (from._internal_has_update_particle_set_frozen()) {
    _this->_impl_.update_particle_set_frozen_ = new ::CUserMsg_ParticleManager_UpdateParticleSetFrozen(*from._impl_.update_particle_set_frozen_);
  }
  if (from._internal_has_change_control_point_attachment()) {
    _this->_impl_.change_control_point_attachment_ = new ::CUserMsg_ParticleManager_ChangeControlPointAttachment(*from._impl_.change_control_point_attachment_);
  }
  if (from._internal_has_update_entity_position()) {
    _this->_impl_.update_entity_position_ = new ::CUserMsg_ParticleManager_UpdateEntityPosition(*from._impl_.update_entity_position_);
  }
  if (from._internal_has_set_particle_fow_properties()) {
    _this->_impl_.set_particle_fow_properties_ = new ::CUserMsg_ParticleManager_SetParticleFoWProperties(*from._impl_.set_particle_fow_properties_);
  }
  if (from._internal_has_set_particle_text()) {
    _this->_impl_.set_particle_text_ = new ::CUserMsg_ParticleManager_SetParticleText(*from._impl_.set_particle_text_);
  }
  if (from._internal_has_set_particle_should_check_fow()) {
    _this->_impl_.set_particle_should_check_fow_ = new ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW(*from._impl_.set_particle_should_check_fow_);
  }
  if (from._internal_has_set_control_point_model()) {
    _this->_impl_.set_control_point_model_ = new ::CUserMsg_ParticleManager_SetControlPointModel(*from._impl_.set_control_point_model_);
  }
  if (from._internal_has_set_control_point_snapshot()) {
    _this->_impl_.set_control_point_snapshot_ = new ::CUserMsg_ParticleManager_SetControlPointSnapshot(*from._impl_.set_control_point_snapshot_);
  }
  if (from._internal_has_set_texture_attribute()) {
    _this->_impl_.set_texture_attribute_ = new ::CUserMsg_ParticleManager_SetTextureAttribute(*from._impl_.set_texture_attribute_);
  }
  if (from._internal_has_set_scene_object_generic_flag()) {
    _this->_impl_.set_scene_object_generic_flag_ = new ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag(*from._impl_.set_scene_object_generic_flag_);
  }
  if (from._internal_has_set_scene_object_tint_and_desat()) {
    _this->_impl_.set_scene_object_tint_and_desat_ = new ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat(*from._impl_.set_scene_object_tint_and_desat_);
  }
  if (from._internal_has_destroy_particle_named()) {
    _this->_impl_.destroy_particle_named_ = new ::CUserMsg_ParticleManager_DestroyParticleNamed(*from._impl_.destroy_particle_named_);
  }
  if (from._internal_has_particle_skip_to_time()) {
    _this->_impl_.particle_skip_to_time_ = new ::CUserMsg_ParticleManager_ParticleSkipToTime(*from._impl_.particle_skip_to_time_);
  }
  if (from._internal_has_particle_can_freeze()) {
    _this->_impl_.particle_can_freeze_ = new ::CUserMsg_ParticleManager_ParticleCanFreeze(*from._impl_.particle_can_freeze_);
  }
  if (from._internal_has_set_named_value_context()) {
    _this->_impl_.set_named_value_context_ = new ::CUserMsg_ParticleManager_SetParticleNamedValueContext(*from._impl_.set_named_value_context_);
  }
  if (from._internal_has_update_particle_transform()) {
    _this->_impl_.update_particle_transform_ = new ::CUserMsg_ParticleManager_UpdateParticleTransform(*from._impl_.update_particle_transform_);
  }
  if (from._internal_has_particle_freeze_transition_override()) {
    _this->_impl_.particle_freeze_transition_override_ = new ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride(*from._impl_.particle_freeze_transition_override_);
  }
  if (from._internal_has_freeze_particle_involving()) {
    _this->_impl_.freeze_particle_involving_ = new ::CUserMsg_ParticleManager_FreezeParticleInvolving(*from._impl_.freeze_particle_involving_);
  }
  if (from._internal_has_add_modellist_override_element()) {
    _this->_impl_.add_modellist_override_element_ = new ::CUserMsg_ParticleManager_AddModellistOverrideElement(*from._impl_.add_modellist_override_element_);
  }
  if (from._internal_has_clear_modellist_override()) {
    _this->_impl_.clear_modellist_override_ = new ::CUserMsg_ParticleManager_ClearModellistOverride(*from._impl_.clear_modellist_override_);
  }
  if (from._internal_has_create_physics_sim()) {
    _this->_impl_.create_physics_sim_ = new ::CUserMsg_ParticleManager_CreatePhysicsSim(*from._impl_.create_physics_sim_);
  }
  if (from._internal_has_destroy_physics_sim()) {
    _this->_impl_.destroy_physics_sim_ = new ::CUserMsg_ParticleManager_DestroyPhysicsSim(*from._impl_.destroy_physics_sim_);
  }
  if (from._internal_has_set_vdata()) {
    _this->_impl_.set_vdata_ = new ::CUserMsg_ParticleManager_SetVData(*from._impl_.set_vdata_);
  }
  if (from._internal_has_set_material_override()) {
    _this->_impl_.set_material_override_ = new ::CUserMsg_ParticleManager_SetMaterialOverride(*from._impl_.set_material_override_);
  }
  if (from._internal_has_add_fan()) {
    _this->_impl_.add_fan_ = new ::CUserMsg_ParticleManager_AddFan(*from._impl_.add_fan_);
  }
  if (from._internal_has_update_fan()) {
    _this->_impl_.update_fan_ = new ::CUserMsg_ParticleManager_UpdateFan(*from._impl_.update_fan_);
  }
  if (from._internal_has_set_particle_cluster_growth()) {
    _this->_impl_.set_particle_cluster_growth_ = new ::CUserMsg_ParticleManager_SetParticleClusterGrowth(*from._impl_.set_particle_cluster_growth_);
  }
  if (from._internal_has_remove_fan()) {
    _this->_impl_.remove_fan_ = new ::CUserMsg_ParticleManager_RemoveFan(*from._impl_.remove_fan_);
  }
  ::memcpy(&_impl_.type_, &from._impl_.type_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.index_) -
    reinterpret_cast<char*>(&_impl_.type_)) + sizeof(_impl_.index_));
  // @@protoc_insertion_point(copy_constructor:CUserMsg_ParticleManager)
}

inline void CUserMsg_ParticleManager::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      /*decltype(_impl_._extensions_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.release_particle_index_){nullptr}
    , decltype(_impl_.create_particle_){nullptr}
    , decltype(_impl_.destroy_particle_){nullptr}
    , decltype(_impl_.destroy_particle_involving_){nullptr}
    , decltype(_impl_.update_particle_){nullptr}
    , decltype(_impl_.update_particle_fwd_){nullptr}
    , decltype(_impl_.update_particle_orient_){nullptr}
    , decltype(_impl_.update_particle_fallback_){nullptr}
    , decltype(_impl_.update_particle_offset_){nullptr}
    , decltype(_impl_.update_particle_ent_){nullptr}
    , decltype(_impl_.update_particle_should_draw_){nullptr}
    , decltype(_impl_.update_particle_set_frozen_){nullptr}
    , decltype(_impl_.change_control_point_attachment_){nullptr}
    , decltype(_impl_.update_entity_position_){nullptr}
    , decltype(_impl_.set_particle_fow_properties_){nullptr}
    , decltype(_impl_.set_particle_text_){nullptr}
    , decltype(_impl_.set_particle_should_check_fow_){nullptr}
    , decltype(_impl_.set_control_point_model_){nullptr}
    , decltype(_impl_.set_control_point_snapshot_){nullptr}
    , decltype(_impl_.set_texture_attribute_){nullptr}
    , decltype(_impl_.set_scene_object_generic_flag_){nullptr}
    , decltype(_impl_.set_scene_object_tint_and_desat_){nullptr}
    , decltype(_impl_.destroy_particle_named_){nullptr}
    , decltype(_impl_.particle_skip_to_time_){nullptr}
    , decltype(_impl_.particle_can_freeze_){nullptr}
    , decltype(_impl_.set_named_value_context_){nullptr}
    , decltype(_impl_.update_particle_transform_){nullptr}
    , decltype(_impl_.particle_freeze_transition_override_){nullptr}
    , decltype(_impl_.freeze_particle_involving_){nullptr}
    , decltype(_impl_.add_modellist_override_element_){nullptr}
    , decltype(_impl_.clear_modellist_override_){nullptr}
    , decltype(_impl_.create_physics_sim_){nullptr}
    , decltype(_impl_.destroy_physics_sim_){nullptr}
    , decltype(_impl_.set_vdata_){nullptr}
    , decltype(_impl_.set_material_override_){nullptr}
    , decltype(_impl_.add_fan_){nullptr}
    , decltype(_impl_.update_fan_){nullptr}
    , decltype(_impl_.set_particle_cluster_growth_){nullptr}
    , decltype(_impl_.remove_fan_){nullptr}
    , decltype(_impl_.type_){0}
    , decltype(_impl_.index_){0u}
  };
}

CUserMsg_ParticleManager::~CUserMsg_ParticleManager() {
  // @@protoc_insertion_point(destructor:CUserMsg_ParticleManager)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMsg_ParticleManager::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_._extensions_.~ExtensionSet();
  if (this != internal_default_instance()) delete _impl_.release_particle_index_;
  if (this != internal_default_instance()) delete _impl_.create_particle_;
  if (this != internal_default_instance()) delete _impl_.destroy_particle_;
  if (this != internal_default_instance()) delete _impl_.destroy_particle_involving_;
  if (this != internal_default_instance()) delete _impl_.update_particle_;
  if (this != internal_default_instance()) delete _impl_.update_particle_fwd_;
  if (this != internal_default_instance()) delete _impl_.update_particle_orient_;
  if (this != internal_default_instance()) delete _impl_.update_particle_fallback_;
  if (this != internal_default_instance()) delete _impl_.update_particle_offset_;
  if (this != internal_default_instance()) delete _impl_.update_particle_ent_;
  if (this != internal_default_instance()) delete _impl_.update_particle_should_draw_;
  if (this != internal_default_instance()) delete _impl_.update_particle_set_frozen_;
  if (this != internal_default_instance()) delete _impl_.change_control_point_attachment_;
  if (this != internal_default_instance()) delete _impl_.update_entity_position_;
  if (this != internal_default_instance()) delete _impl_.set_particle_fow_properties_;
  if (this != internal_default_instance()) delete _impl_.set_particle_text_;
  if (this != internal_default_instance()) delete _impl_.set_particle_should_check_fow_;
  if (this != internal_default_instance()) delete _impl_.set_control_point_model_;
  if (this != internal_default_instance()) delete _impl_.set_control_point_snapshot_;
  if (this != internal_default_instance()) delete _impl_.set_texture_attribute_;
  if (this != internal_default_instance()) delete _impl_.set_scene_object_generic_flag_;
  if (this != internal_default_instance()) delete _impl_.set_scene_object_tint_and_desat_;
  if (this != internal_default_instance()) delete _impl_.destroy_particle_named_;
  if (this != internal_default_instance()) delete _impl_.particle_skip_to_time_;
  if (this != internal_default_instance()) delete _impl_.particle_can_freeze_;
  if (this != internal_default_instance()) delete _impl_.set_named_value_context_;
  if (this != internal_default_instance()) delete _impl_.update_particle_transform_;
  if (this != internal_default_instance()) delete _impl_.particle_freeze_transition_override_;
  if (this != internal_default_instance()) delete _impl_.freeze_particle_involving_;
  if (this != internal_default_instance()) delete _impl_.add_modellist_override_element_;
  if (this != internal_default_instance()) delete _impl_.clear_modellist_override_;
  if (this != internal_default_instance()) delete _impl_.create_physics_sim_;
  if (this != internal_default_instance()) delete _impl_.destroy_physics_sim_;
  if (this != internal_default_instance()) delete _impl_.set_vdata_;
  if (this != internal_default_instance()) delete _impl_.set_material_override_;
  if (this != internal_default_instance()) delete _impl_.add_fan_;
  if (this != internal_default_instance()) delete _impl_.update_fan_;
  if (this != internal_default_instance()) delete _impl_.set_particle_cluster_growth_;
  if (this != internal_default_instance()) delete _impl_.remove_fan_;
}

void CUserMsg_ParticleManager::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMsg_ParticleManager::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_ParticleManager)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_._extensions_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.release_particle_index_ != nullptr);
      _impl_.release_particle_index_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.create_particle_ != nullptr);
      _impl_.create_particle_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.destroy_particle_ != nullptr);
      _impl_.destroy_particle_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.destroy_particle_involving_ != nullptr);
      _impl_.destroy_particle_involving_->Clear();
    }
    if (cached_has_bits & 0x00000010u) {
      GOOGLE_DCHECK(_impl_.update_particle_ != nullptr);
      _impl_.update_particle_->Clear();
    }
    if (cached_has_bits & 0x00000020u) {
      GOOGLE_DCHECK(_impl_.update_particle_fwd_ != nullptr);
      _impl_.update_particle_fwd_->Clear();
    }
    if (cached_has_bits & 0x00000040u) {
      GOOGLE_DCHECK(_impl_.update_particle_orient_ != nullptr);
      _impl_.update_particle_orient_->Clear();
    }
    if (cached_has_bits & 0x00000080u) {
      GOOGLE_DCHECK(_impl_.update_particle_fallback_ != nullptr);
      _impl_.update_particle_fallback_->Clear();
    }
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      GOOGLE_DCHECK(_impl_.update_particle_offset_ != nullptr);
      _impl_.update_particle_offset_->Clear();
    }
    if (cached_has_bits & 0x00000200u) {
      GOOGLE_DCHECK(_impl_.update_particle_ent_ != nullptr);
      _impl_.update_particle_ent_->Clear();
    }
    if (cached_has_bits & 0x00000400u) {
      GOOGLE_DCHECK(_impl_.update_particle_should_draw_ != nullptr);
      _impl_.update_particle_should_draw_->Clear();
    }
    if (cached_has_bits & 0x00000800u) {
      GOOGLE_DCHECK(_impl_.update_particle_set_frozen_ != nullptr);
      _impl_.update_particle_set_frozen_->Clear();
    }
    if (cached_has_bits & 0x00001000u) {
      GOOGLE_DCHECK(_impl_.change_control_point_attachment_ != nullptr);
      _impl_.change_control_point_attachment_->Clear();
    }
    if (cached_has_bits & 0x00002000u) {
      GOOGLE_DCHECK(_impl_.update_entity_position_ != nullptr);
      _impl_.update_entity_position_->Clear();
    }
    if (cached_has_bits & 0x00004000u) {
      GOOGLE_DCHECK(_impl_.set_particle_fow_properties_ != nullptr);
      _impl_.set_particle_fow_properties_->Clear();
    }
    if (cached_has_bits & 0x00008000u) {
      GOOGLE_DCHECK(_impl_.set_particle_text_ != nullptr);
      _impl_.set_particle_text_->Clear();
    }
  }
  if (cached_has_bits & 0x00ff0000u) {
    if (cached_has_bits & 0x00010000u) {
      GOOGLE_DCHECK(_impl_.set_particle_should_check_fow_ != nullptr);
      _impl_.set_particle_should_check_fow_->Clear();
    }
    if (cached_has_bits & 0x00020000u) {
      GOOGLE_DCHECK(_impl_.set_control_point_model_ != nullptr);
      _impl_.set_control_point_model_->Clear();
    }
    if (cached_has_bits & 0x00040000u) {
      GOOGLE_DCHECK(_impl_.set_control_point_snapshot_ != nullptr);
      _impl_.set_control_point_snapshot_->Clear();
    }
    if (cached_has_bits & 0x00080000u) {
      GOOGLE_DCHECK(_impl_.set_texture_attribute_ != nullptr);
      _impl_.set_texture_attribute_->Clear();
    }
    if (cached_has_bits & 0x00100000u) {
      GOOGLE_DCHECK(_impl_.set_scene_object_generic_flag_ != nullptr);
      _impl_.set_scene_object_generic_flag_->Clear();
    }
    if (cached_has_bits & 0x00200000u) {
      GOOGLE_DCHECK(_impl_.set_scene_object_tint_and_desat_ != nullptr);
      _impl_.set_scene_object_tint_and_desat_->Clear();
    }
    if (cached_has_bits & 0x00400000u) {
      GOOGLE_DCHECK(_impl_.destroy_particle_named_ != nullptr);
      _impl_.destroy_particle_named_->Clear();
    }
    if (cached_has_bits & 0x00800000u) {
      GOOGLE_DCHECK(_impl_.particle_skip_to_time_ != nullptr);
      _impl_.particle_skip_to_time_->Clear();
    }
  }
  if (cached_has_bits & 0xff000000u) {
    if (cached_has_bits & 0x01000000u) {
      GOOGLE_DCHECK(_impl_.particle_can_freeze_ != nullptr);
      _impl_.particle_can_freeze_->Clear();
    }
    if (cached_has_bits & 0x02000000u) {
      GOOGLE_DCHECK(_impl_.set_named_value_context_ != nullptr);
      _impl_.set_named_value_context_->Clear();
    }
    if (cached_has_bits & 0x04000000u) {
      GOOGLE_DCHECK(_impl_.update_particle_transform_ != nullptr);
      _impl_.update_particle_transform_->Clear();
    }
    if (cached_has_bits & 0x08000000u) {
      GOOGLE_DCHECK(_impl_.particle_freeze_transition_override_ != nullptr);
      _impl_.particle_freeze_transition_override_->Clear();
    }
    if (cached_has_bits & 0x10000000u) {
      GOOGLE_DCHECK(_impl_.freeze_particle_involving_ != nullptr);
      _impl_.freeze_particle_involving_->Clear();
    }
    if (cached_has_bits & 0x20000000u) {
      GOOGLE_DCHECK(_impl_.add_modellist_override_element_ != nullptr);
      _impl_.add_modellist_override_element_->Clear();
    }
    if (cached_has_bits & 0x40000000u) {
      GOOGLE_DCHECK(_impl_.clear_modellist_override_ != nullptr);
      _impl_.clear_modellist_override_->Clear();
    }
    if (cached_has_bits & 0x80000000u) {
      GOOGLE_DCHECK(_impl_.create_physics_sim_ != nullptr);
      _impl_.create_physics_sim_->Clear();
    }
  }
  cached_has_bits = _impl_._has_bits_[1];
  if (cached_has_bits & 0x0000007fu) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(_impl_.destroy_physics_sim_ != nullptr);
      _impl_.destroy_physics_sim_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.set_vdata_ != nullptr);
      _impl_.set_vdata_->Clear();
    }
    if (cached_has_bits & 0x00000004u) {
      GOOGLE_DCHECK(_impl_.set_material_override_ != nullptr);
      _impl_.set_material_override_->Clear();
    }
    if (cached_has_bits & 0x00000008u) {
      GOOGLE_DCHECK(_impl_.add_fan_ != nullptr);
      _impl_.add_fan_->Clear();
    }
    if (cached_has_bits & 0x00000010u) {
      GOOGLE_DCHECK(_impl_.update_fan_ != nullptr);
      _impl_.update_fan_->Clear();
    }
    if (cached_has_bits & 0x00000020u) {
      GOOGLE_DCHECK(_impl_.set_particle_cluster_growth_ != nullptr);
      _impl_.set_particle_cluster_growth_->Clear();
    }
    if (cached_has_bits & 0x00000040u) {
      GOOGLE_DCHECK(_impl_.remove_fan_ != nullptr);
      _impl_.remove_fan_->Clear();
    }
  }
  _impl_.type_ = 0;
  _impl_.index_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_ParticleManager::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // required .PARTICLE_MESSAGE type = 1 [default = GAME_PARTICLE_MANAGER_EVENT_CREATE];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          if (PROTOBUF_PREDICT_TRUE(::PARTICLE_MESSAGE_IsValid(val))) {
            _internal_set_type(static_cast<::PARTICLE_MESSAGE>(val));
          } else {
            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
          }
        } else
          goto handle_unusual;
        continue;
      // required uint32 index = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_index(&_impl_._has_bits_);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ReleaseParticleIndex release_particle_index = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_release_particle_index(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.CreateParticle create_particle = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_particle(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.DestroyParticle destroy_particle = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_destroy_particle(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.DestroyParticleInvolving destroy_particle_involving = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_destroy_particle_involving(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticle_OBSOLETE update_particle = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE update_particle_fwd = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_fwd(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE update_particle_orient = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_orient(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleFallback update_particle_fallback = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_fallback(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleOffset update_particle_offset = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_offset(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleEnt update_particle_ent = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_ent(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleShouldDraw update_particle_should_draw = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 114)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_should_draw(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleSetFrozen update_particle_set_frozen = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 122)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_set_frozen(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ChangeControlPointAttachment change_control_point_attachment = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          ptr = ctx->ParseMessage(_internal_mutable_change_control_point_attachment(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateEntityPosition update_entity_position = 17;
      case 17:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 138)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_entity_position(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetParticleFoWProperties set_particle_fow_properties = 18;
      case 18:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 146)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_particle_fow_properties(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetParticleText set_particle_text = 19;
      case 19:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 154)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_particle_text(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetParticleShouldCheckFoW set_particle_should_check_fow = 20;
      case 20:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 162)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_particle_should_check_fow(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetControlPointModel set_control_point_model = 21;
      case 21:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 170)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_control_point_model(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetControlPointSnapshot set_control_point_snapshot = 22;
      case 22:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 178)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_control_point_snapshot(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetTextureAttribute set_texture_attribute = 23;
      case 23:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 186)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_texture_attribute(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetSceneObjectGenericFlag set_scene_object_generic_flag = 24;
      case 24:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 194)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_scene_object_generic_flag(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetSceneObjectTintAndDesat set_scene_object_tint_and_desat = 25;
      case 25:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 202)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_scene_object_tint_and_desat(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.DestroyParticleNamed destroy_particle_named = 26;
      case 26:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 210)) {
          ptr = ctx->ParseMessage(_internal_mutable_destroy_particle_named(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ParticleSkipToTime particle_skip_to_time = 27;
      case 27:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 218)) {
          ptr = ctx->ParseMessage(_internal_mutable_particle_skip_to_time(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ParticleCanFreeze particle_can_freeze = 28;
      case 28:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 226)) {
          ptr = ctx->ParseMessage(_internal_mutable_particle_can_freeze(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetParticleNamedValueContext set_named_value_context = 29;
      case 29:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 234)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_named_value_context(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateParticleTransform update_particle_transform = 30;
      case 30:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 242)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_particle_transform(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ParticleFreezeTransitionOverride particle_freeze_transition_override = 31;
      case 31:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 250)) {
          ptr = ctx->ParseMessage(_internal_mutable_particle_freeze_transition_override(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.FreezeParticleInvolving freeze_particle_involving = 32;
      case 32:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 2)) {
          ptr = ctx->ParseMessage(_internal_mutable_freeze_particle_involving(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.AddModellistOverrideElement add_modellist_override_element = 33;
      case 33:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_add_modellist_override_element(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.ClearModellistOverride clear_modellist_override = 34;
      case 34:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_clear_modellist_override(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.CreatePhysicsSim create_physics_sim = 35;
      case 35:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_physics_sim(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.DestroyPhysicsSim destroy_physics_sim = 36;
      case 36:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_destroy_physics_sim(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetVData set_vdata = 37;
      case 37:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_vdata(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetMaterialOverride set_material_override = 38;
      case 38:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_material_override(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.AddFan add_fan = 39;
      case 39:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_add_fan(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.UpdateFan update_fan = 40;
      case 40:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_update_fan(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.SetParticleClusterGrowth set_particle_cluster_growth = 41;
      case 41:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_particle_cluster_growth(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CUserMsg_ParticleManager.RemoveFan remove_fan = 42;
      case 42:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_remove_fan(), 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;
    }
    if ((800u <= tag && tag < 1616u)) {
      ptr = _impl_._extensions_.ParseField(tag, ptr, internal_default_instance(), &_internal_metadata_, ctx);
      CHK_(ptr != nullptr);
      continue;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CUserMsg_ParticleManager::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_ParticleManager)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[1];
  // required .PARTICLE_MESSAGE type = 1 [default = GAME_PARTICLE_MANAGER_EVENT_CREATE];
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  // required uint32 index = 2;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_index(), target);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional .CUserMsg_ParticleManager.ReleaseParticleIndex release_particle_index = 3;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::release_particle_index(this),
        _Internal::release_particle_index(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.CreateParticle create_particle = 4;
  if (cached_has_bits & 0x00000002u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::create_particle(this),
        _Internal::create_particle(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.DestroyParticle destroy_particle = 5;
  if (cached_has_bits & 0x00000004u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::destroy_particle(this),
        _Internal::destroy_particle(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.DestroyParticleInvolving destroy_particle_involving = 6;
  if (cached_has_bits & 0x00000008u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::destroy_particle_involving(this),
        _Internal::destroy_particle_involving(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticle_OBSOLETE update_particle = 7;
  if (cached_has_bits & 0x00000010u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::update_particle(this),
        _Internal::update_particle(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE update_particle_fwd = 8;
  if (cached_has_bits & 0x00000020u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::update_particle_fwd(this),
        _Internal::update_particle_fwd(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE update_particle_orient = 9;
  if (cached_has_bits & 0x00000040u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(9, _Internal::update_particle_orient(this),
        _Internal::update_particle_orient(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleFallback update_particle_fallback = 10;
  if (cached_has_bits & 0x00000080u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(10, _Internal::update_particle_fallback(this),
        _Internal::update_particle_fallback(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleOffset update_particle_offset = 11;
  if (cached_has_bits & 0x00000100u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(11, _Internal::update_particle_offset(this),
        _Internal::update_particle_offset(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleEnt update_particle_ent = 12;
  if (cached_has_bits & 0x00000200u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(12, _Internal::update_particle_ent(this),
        _Internal::update_particle_ent(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleShouldDraw update_particle_should_draw = 14;
  if (cached_has_bits & 0x00000400u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(14, _Internal::update_particle_should_draw(this),
        _Internal::update_particle_should_draw(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleSetFrozen update_particle_set_frozen = 15;
  if (cached_has_bits & 0x00000800u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(15, _Internal::update_particle_set_frozen(this),
        _Internal::update_particle_set_frozen(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.ChangeControlPointAttachment change_control_point_attachment = 16;
  if (cached_has_bits & 0x00001000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(16, _Internal::change_control_point_attachment(this),
        _Internal::change_control_point_attachment(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateEntityPosition update_entity_position = 17;
  if (cached_has_bits & 0x00002000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(17, _Internal::update_entity_position(this),
        _Internal::update_entity_position(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetParticleFoWProperties set_particle_fow_properties = 18;
  if (cached_has_bits & 0x00004000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(18, _Internal::set_particle_fow_properties(this),
        _Internal::set_particle_fow_properties(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetParticleText set_particle_text = 19;
  if (cached_has_bits & 0x00008000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(19, _Internal::set_particle_text(this),
        _Internal::set_particle_text(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetParticleShouldCheckFoW set_particle_should_check_fow = 20;
  if (cached_has_bits & 0x00010000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(20, _Internal::set_particle_should_check_fow(this),
        _Internal::set_particle_should_check_fow(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetControlPointModel set_control_point_model = 21;
  if (cached_has_bits & 0x00020000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(21, _Internal::set_control_point_model(this),
        _Internal::set_control_point_model(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetControlPointSnapshot set_control_point_snapshot = 22;
  if (cached_has_bits & 0x00040000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(22, _Internal::set_control_point_snapshot(this),
        _Internal::set_control_point_snapshot(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetTextureAttribute set_texture_attribute = 23;
  if (cached_has_bits & 0x00080000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(23, _Internal::set_texture_attribute(this),
        _Internal::set_texture_attribute(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetSceneObjectGenericFlag set_scene_object_generic_flag = 24;
  if (cached_has_bits & 0x00100000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(24, _Internal::set_scene_object_generic_flag(this),
        _Internal::set_scene_object_generic_flag(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetSceneObjectTintAndDesat set_scene_object_tint_and_desat = 25;
  if (cached_has_bits & 0x00200000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(25, _Internal::set_scene_object_tint_and_desat(this),
        _Internal::set_scene_object_tint_and_desat(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.DestroyParticleNamed destroy_particle_named = 26;
  if (cached_has_bits & 0x00400000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(26, _Internal::destroy_particle_named(this),
        _Internal::destroy_particle_named(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.ParticleSkipToTime particle_skip_to_time = 27;
  if (cached_has_bits & 0x00800000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(27, _Internal::particle_skip_to_time(this),
        _Internal::particle_skip_to_time(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.ParticleCanFreeze particle_can_freeze = 28;
  if (cached_has_bits & 0x01000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(28, _Internal::particle_can_freeze(this),
        _Internal::particle_can_freeze(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetParticleNamedValueContext set_named_value_context = 29;
  if (cached_has_bits & 0x02000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(29, _Internal::set_named_value_context(this),
        _Internal::set_named_value_context(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateParticleTransform update_particle_transform = 30;
  if (cached_has_bits & 0x04000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(30, _Internal::update_particle_transform(this),
        _Internal::update_particle_transform(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.ParticleFreezeTransitionOverride particle_freeze_transition_override = 31;
  if (cached_has_bits & 0x08000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(31, _Internal::particle_freeze_transition_override(this),
        _Internal::particle_freeze_transition_override(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.FreezeParticleInvolving freeze_particle_involving = 32;
  if (cached_has_bits & 0x10000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(32, _Internal::freeze_particle_involving(this),
        _Internal::freeze_particle_involving(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.AddModellistOverrideElement add_modellist_override_element = 33;
  if (cached_has_bits & 0x20000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(33, _Internal::add_modellist_override_element(this),
        _Internal::add_modellist_override_element(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.ClearModellistOverride clear_modellist_override = 34;
  if (cached_has_bits & 0x40000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(34, _Internal::clear_modellist_override(this),
        _Internal::clear_modellist_override(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.CreatePhysicsSim create_physics_sim = 35;
  if (cached_has_bits & 0x80000000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(35, _Internal::create_physics_sim(this),
        _Internal::create_physics_sim(this).GetCachedSize(), target, stream);
  }

  cached_has_bits = _impl_._has_bits_[1];
  // optional .CUserMsg_ParticleManager.DestroyPhysicsSim destroy_physics_sim = 36;
  if (cached_has_bits & 0x00000001u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(36, _Internal::destroy_physics_sim(this),
        _Internal::destroy_physics_sim(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetVData set_vdata = 37;
  if (cached_has_bits & 0x00000002u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(37, _Internal::set_vdata(this),
        _Internal::set_vdata(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetMaterialOverride set_material_override = 38;
  if (cached_has_bits & 0x00000004u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(38, _Internal::set_material_override(this),
        _Internal::set_material_override(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.AddFan add_fan = 39;
  if (cached_has_bits & 0x00000008u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(39, _Internal::add_fan(this),
        _Internal::add_fan(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.UpdateFan update_fan = 40;
  if (cached_has_bits & 0x00000010u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(40, _Internal::update_fan(this),
        _Internal::update_fan(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.SetParticleClusterGrowth set_particle_cluster_growth = 41;
  if (cached_has_bits & 0x00000020u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(41, _Internal::set_particle_cluster_growth(this),
        _Internal::set_particle_cluster_growth(this).GetCachedSize(), target, stream);
  }

  // optional .CUserMsg_ParticleManager.RemoveFan remove_fan = 42;
  if (cached_has_bits & 0x00000040u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(42, _Internal::remove_fan(this),
        _Internal::remove_fan(this).GetCachedSize(), target, stream);
  }

  // Extension range [100, 202)
  target = _impl_._extensions_._InternalSerialize(
  internal_default_instance(), 100, 202, target, stream);

  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:CUserMsg_ParticleManager)
  return target;
}

size_t CUserMsg_ParticleManager::RequiredFieldsByteSizeFallback() const {
// @@protoc_insertion_point(required_fields_byte_size_fallback_start:CUserMsg_ParticleManager)
  size_t total_size = 0;

  if (_internal_has_type()) {
    // required .PARTICLE_MESSAGE type = 1 [default = GAME_PARTICLE_MANAGER_EVENT_CREATE];
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  if (_internal_has_index()) {
    // required uint32 index = 2;
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index());
  }

  return total_size;
}
size_t CUserMsg_ParticleManager::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_ParticleManager)
  size_t total_size = 0;

  total_size += _impl_._extensions_.ByteSize();

  if (((_impl_._has_bits_[1] & 0x00000180) ^ 0x00000180) == 0) {  // All required fields are present.
    // required .PARTICLE_MESSAGE type = 1 [default = GAME_PARTICLE_MANAGER_EVENT_CREATE];
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());

    // required uint32 index = 2;
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index());

  } else {
    total_size += RequiredFieldsByteSizeFallback();
  }
  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 .CUserMsg_ParticleManager.ReleaseParticleIndex release_particle_index = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.release_particle_index_);
    }

    // optional .CUserMsg_ParticleManager.CreateParticle create_particle = 4;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.create_particle_);
    }

    // optional .CUserMsg_ParticleManager.DestroyParticle destroy_particle = 5;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.destroy_particle_);
    }

    // optional .CUserMsg_ParticleManager.DestroyParticleInvolving destroy_particle_involving = 6;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.destroy_particle_involving_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticle_OBSOLETE update_particle = 7;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE update_particle_fwd = 8;
    if (cached_has_bits & 0x00000020u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_fwd_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE update_particle_orient = 9;
    if (cached_has_bits & 0x00000040u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_orient_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleFallback update_particle_fallback = 10;
    if (cached_has_bits & 0x00000080u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_fallback_);
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional .CUserMsg_ParticleManager.UpdateParticleOffset update_particle_offset = 11;
    if (cached_has_bits & 0x00000100u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_offset_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleEnt update_particle_ent = 12;
    if (cached_has_bits & 0x00000200u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_ent_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleShouldDraw update_particle_should_draw = 14;
    if (cached_has_bits & 0x00000400u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_should_draw_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleSetFrozen update_particle_set_frozen = 15;
    if (cached_has_bits & 0x00000800u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_set_frozen_);
    }

    // optional .CUserMsg_ParticleManager.ChangeControlPointAttachment change_control_point_attachment = 16;
    if (cached_has_bits & 0x00001000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.change_control_point_attachment_);
    }

    // optional .CUserMsg_ParticleManager.UpdateEntityPosition update_entity_position = 17;
    if (cached_has_bits & 0x00002000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_entity_position_);
    }

    // optional .CUserMsg_ParticleManager.SetParticleFoWProperties set_particle_fow_properties = 18;
    if (cached_has_bits & 0x00004000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_particle_fow_properties_);
    }

    // optional .CUserMsg_ParticleManager.SetParticleText set_particle_text = 19;
    if (cached_has_bits & 0x00008000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_particle_text_);
    }

  }
  if (cached_has_bits & 0x00ff0000u) {
    // optional .CUserMsg_ParticleManager.SetParticleShouldCheckFoW set_particle_should_check_fow = 20;
    if (cached_has_bits & 0x00010000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_particle_should_check_fow_);
    }

    // optional .CUserMsg_ParticleManager.SetControlPointModel set_control_point_model = 21;
    if (cached_has_bits & 0x00020000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_control_point_model_);
    }

    // optional .CUserMsg_ParticleManager.SetControlPointSnapshot set_control_point_snapshot = 22;
    if (cached_has_bits & 0x00040000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_control_point_snapshot_);
    }

    // optional .CUserMsg_ParticleManager.SetTextureAttribute set_texture_attribute = 23;
    if (cached_has_bits & 0x00080000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_texture_attribute_);
    }

    // optional .CUserMsg_ParticleManager.SetSceneObjectGenericFlag set_scene_object_generic_flag = 24;
    if (cached_has_bits & 0x00100000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_scene_object_generic_flag_);
    }

    // optional .CUserMsg_ParticleManager.SetSceneObjectTintAndDesat set_scene_object_tint_and_desat = 25;
    if (cached_has_bits & 0x00200000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_scene_object_tint_and_desat_);
    }

    // optional .CUserMsg_ParticleManager.DestroyParticleNamed destroy_particle_named = 26;
    if (cached_has_bits & 0x00400000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.destroy_particle_named_);
    }

    // optional .CUserMsg_ParticleManager.ParticleSkipToTime particle_skip_to_time = 27;
    if (cached_has_bits & 0x00800000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.particle_skip_to_time_);
    }

  }
  if (cached_has_bits & 0xff000000u) {
    // optional .CUserMsg_ParticleManager.ParticleCanFreeze particle_can_freeze = 28;
    if (cached_has_bits & 0x01000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.particle_can_freeze_);
    }

    // optional .CUserMsg_ParticleManager.SetParticleNamedValueContext set_named_value_context = 29;
    if (cached_has_bits & 0x02000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_named_value_context_);
    }

    // optional .CUserMsg_ParticleManager.UpdateParticleTransform update_particle_transform = 30;
    if (cached_has_bits & 0x04000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_particle_transform_);
    }

    // optional .CUserMsg_ParticleManager.ParticleFreezeTransitionOverride particle_freeze_transition_override = 31;
    if (cached_has_bits & 0x08000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.particle_freeze_transition_override_);
    }

    // optional .CUserMsg_ParticleManager.FreezeParticleInvolving freeze_particle_involving = 32;
    if (cached_has_bits & 0x10000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.freeze_particle_involving_);
    }

    // optional .CUserMsg_ParticleManager.AddModellistOverrideElement add_modellist_override_element = 33;
    if (cached_has_bits & 0x20000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.add_modellist_override_element_);
    }

    // optional .CUserMsg_ParticleManager.ClearModellistOverride clear_modellist_override = 34;
    if (cached_has_bits & 0x40000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.clear_modellist_override_);
    }

    // optional .CUserMsg_ParticleManager.CreatePhysicsSim create_physics_sim = 35;
    if (cached_has_bits & 0x80000000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.create_physics_sim_);
    }

  }
  cached_has_bits = _impl_._has_bits_[1];
  if (cached_has_bits & 0x0000007fu) {
    // optional .CUserMsg_ParticleManager.DestroyPhysicsSim destroy_physics_sim = 36;
    if (cached_has_bits & 0x00000001u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.destroy_physics_sim_);
    }

    // optional .CUserMsg_ParticleManager.SetVData set_vdata = 37;
    if (cached_has_bits & 0x00000002u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_vdata_);
    }

    // optional .CUserMsg_ParticleManager.SetMaterialOverride set_material_override = 38;
    if (cached_has_bits & 0x00000004u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_material_override_);
    }

    // optional .CUserMsg_ParticleManager.AddFan add_fan = 39;
    if (cached_has_bits & 0x00000008u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.add_fan_);
    }

    // optional .CUserMsg_ParticleManager.UpdateFan update_fan = 40;
    if (cached_has_bits & 0x00000010u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.update_fan_);
    }

    // optional .CUserMsg_ParticleManager.SetParticleClusterGrowth set_particle_cluster_growth = 41;
    if (cached_has_bits & 0x00000020u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.set_particle_cluster_growth_);
    }

    // optional .CUserMsg_ParticleManager.RemoveFan remove_fan = 42;
    if (cached_has_bits & 0x00000040u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.remove_fan_);
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_ParticleManager::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_ParticleManager::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_ParticleManager::GetClassData() const { return &_class_data_; }


void CUserMsg_ParticleManager::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_ParticleManager*>(&to_msg);
  auto& from = static_cast<const CUserMsg_ParticleManager&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_ParticleManager)
  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_release_particle_index()->::CUserMsg_ParticleManager_ReleaseParticleIndex::MergeFrom(
          from._internal_release_particle_index());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_create_particle()->::CUserMsg_ParticleManager_CreateParticle::MergeFrom(
          from._internal_create_particle());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_destroy_particle()->::CUserMsg_ParticleManager_DestroyParticle::MergeFrom(
          from._internal_destroy_particle());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_destroy_particle_involving()->::CUserMsg_ParticleManager_DestroyParticleInvolving::MergeFrom(
          from._internal_destroy_particle_involving());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_mutable_update_particle()->::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE::MergeFrom(
          from._internal_update_particle());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_mutable_update_particle_fwd()->::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE::MergeFrom(
          from._internal_update_particle_fwd());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_mutable_update_particle_orient()->::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE::MergeFrom(
          from._internal_update_particle_orient());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_internal_mutable_update_particle_fallback()->::CUserMsg_ParticleManager_UpdateParticleFallback::MergeFrom(
          from._internal_update_particle_fallback());
    }
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_internal_mutable_update_particle_offset()->::CUserMsg_ParticleManager_UpdateParticleOffset::MergeFrom(
          from._internal_update_particle_offset());
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_internal_mutable_update_particle_ent()->::CUserMsg_ParticleManager_UpdateParticleEnt::MergeFrom(
          from._internal_update_particle_ent());
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_internal_mutable_update_particle_should_draw()->::CUserMsg_ParticleManager_UpdateParticleShouldDraw::MergeFrom(
          from._internal_update_particle_should_draw());
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_internal_mutable_update_particle_set_frozen()->::CUserMsg_ParticleManager_UpdateParticleSetFrozen::MergeFrom(
          from._internal_update_particle_set_frozen());
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_internal_mutable_change_control_point_attachment()->::CUserMsg_ParticleManager_ChangeControlPointAttachment::MergeFrom(
          from._internal_change_control_point_attachment());
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_internal_mutable_update_entity_position()->::CUserMsg_ParticleManager_UpdateEntityPosition::MergeFrom(
          from._internal_update_entity_position());
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_internal_mutable_set_particle_fow_properties()->::CUserMsg_ParticleManager_SetParticleFoWProperties::MergeFrom(
          from._internal_set_particle_fow_properties());
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_internal_mutable_set_particle_text()->::CUserMsg_ParticleManager_SetParticleText::MergeFrom(
          from._internal_set_particle_text());
    }
  }
  if (cached_has_bits & 0x00ff0000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_internal_mutable_set_particle_should_check_fow()->::CUserMsg_ParticleManager_SetParticleShouldCheckFoW::MergeFrom(
          from._internal_set_particle_should_check_fow());
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_internal_mutable_set_control_point_model()->::CUserMsg_ParticleManager_SetControlPointModel::MergeFrom(
          from._internal_set_control_point_model());
    }
    if (cached_has_bits & 0x00040000u) {
      _this->_internal_mutable_set_control_point_snapshot()->::CUserMsg_ParticleManager_SetControlPointSnapshot::MergeFrom(
          from._internal_set_control_point_snapshot());
    }
    if (cached_has_bits & 0x00080000u) {
      _this->_internal_mutable_set_texture_attribute()->::CUserMsg_ParticleManager_SetTextureAttribute::MergeFrom(
          from._internal_set_texture_attribute());
    }
    if (cached_has_bits & 0x00100000u) {
      _this->_internal_mutable_set_scene_object_generic_flag()->::CUserMsg_ParticleManager_SetSceneObjectGenericFlag::MergeFrom(
          from._internal_set_scene_object_generic_flag());
    }
    if (cached_has_bits & 0x00200000u) {
      _this->_internal_mutable_set_scene_object_tint_and_desat()->::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat::MergeFrom(
          from._internal_set_scene_object_tint_and_desat());
    }
    if (cached_has_bits & 0x00400000u) {
      _this->_internal_mutable_destroy_particle_named()->::CUserMsg_ParticleManager_DestroyParticleNamed::MergeFrom(
          from._internal_destroy_particle_named());
    }
    if (cached_has_bits & 0x00800000u) {
      _this->_internal_mutable_particle_skip_to_time()->::CUserMsg_ParticleManager_ParticleSkipToTime::MergeFrom(
          from._internal_particle_skip_to_time());
    }
  }
  if (cached_has_bits & 0xff000000u) {
    if (cached_has_bits & 0x01000000u) {
      _this->_internal_mutable_particle_can_freeze()->::CUserMsg_ParticleManager_ParticleCanFreeze::MergeFrom(
          from._internal_particle_can_freeze());
    }
    if (cached_has_bits & 0x02000000u) {
      _this->_internal_mutable_set_named_value_context()->::CUserMsg_ParticleManager_SetParticleNamedValueContext::MergeFrom(
          from._internal_set_named_value_context());
    }
    if (cached_has_bits & 0x04000000u) {
      _this->_internal_mutable_update_particle_transform()->::CUserMsg_ParticleManager_UpdateParticleTransform::MergeFrom(
          from._internal_update_particle_transform());
    }
    if (cached_has_bits & 0x08000000u) {
      _this->_internal_mutable_particle_freeze_transition_override()->::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride::MergeFrom(
          from._internal_particle_freeze_transition_override());
    }
    if (cached_has_bits & 0x10000000u) {
      _this->_internal_mutable_freeze_particle_involving()->::CUserMsg_ParticleManager_FreezeParticleInvolving::MergeFrom(
          from._internal_freeze_particle_involving());
    }
    if (cached_has_bits & 0x20000000u) {
      _this->_internal_mutable_add_modellist_override_element()->::CUserMsg_ParticleManager_AddModellistOverrideElement::MergeFrom(
          from._internal_add_modellist_override_element());
    }
    if (cached_has_bits & 0x40000000u) {
      _this->_internal_mutable_clear_modellist_override()->::CUserMsg_ParticleManager_ClearModellistOverride::MergeFrom(
          from._internal_clear_modellist_override());
    }
    if (cached_has_bits & 0x80000000u) {
      _this->_internal_mutable_create_physics_sim()->::CUserMsg_ParticleManager_CreatePhysicsSim::MergeFrom(
          from._internal_create_physics_sim());
    }
  }
  cached_has_bits = from._impl_._has_bits_[1];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_destroy_physics_sim()->::CUserMsg_ParticleManager_DestroyPhysicsSim::MergeFrom(
          from._internal_destroy_physics_sim());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_set_vdata()->::CUserMsg_ParticleManager_SetVData::MergeFrom(
          from._internal_set_vdata());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_mutable_set_material_override()->::CUserMsg_ParticleManager_SetMaterialOverride::MergeFrom(
          from._internal_set_material_override());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_mutable_add_fan()->::CUserMsg_ParticleManager_AddFan::MergeFrom(
          from._internal_add_fan());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_mutable_update_fan()->::CUserMsg_ParticleManager_UpdateFan::MergeFrom(
          from._internal_update_fan());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_mutable_set_particle_cluster_growth()->::CUserMsg_ParticleManager_SetParticleClusterGrowth::MergeFrom(
          from._internal_set_particle_cluster_growth());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_mutable_remove_fan()->::CUserMsg_ParticleManager_RemoveFan::MergeFrom(
          from._internal_remove_fan());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.type_ = from._impl_.type_;
    }
    _this->_impl_._has_bits_[1] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00000100u) {
    _this->_internal_set_index(from._internal_index());
  }
  _this->_impl_._extensions_.MergeFrom(internal_default_instance(), from._impl_._extensions_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_ParticleManager::CopyFrom(const CUserMsg_ParticleManager& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_ParticleManager)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMsg_ParticleManager::IsInitialized() const {
  if (!_impl_._extensions_.IsInitialized()) {
    return false;
  }

  if (_Internal::MissingRequiredFields(_impl_._has_bits_)) return false;
  return true;
}

void CUserMsg_ParticleManager::InternalSwap(CUserMsg_ParticleManager* other) {
  using std::swap;
  _impl_._extensions_.InternalSwap(&other->_impl_._extensions_);
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_._has_bits_[1], other->_impl_._has_bits_[1]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager, _impl_.index_)
      + sizeof(CUserMsg_ParticleManager::_impl_.index_)
      - PROTOBUF_FIELD_OFFSET(CUserMsg_ParticleManager, _impl_.release_particle_index_)>(
          reinterpret_cast<char*>(&_impl_.release_particle_index_),
          reinterpret_cast<char*>(&other->_impl_.release_particle_index_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_ParticleManager::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[80]);
}

// ===================================================================

class CUserMsg_HudError::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_HudError>()._impl_._has_bits_);
  static void set_has_order_id(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMsg_HudError::CUserMsg_HudError(::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:CUserMsg_HudError)
}
CUserMsg_HudError::CUserMsg_HudError(const CUserMsg_HudError& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_HudError* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.order_id_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.order_id_ = from._impl_.order_id_;
  // @@protoc_insertion_point(copy_constructor:CUserMsg_HudError)
}

inline void CUserMsg_HudError::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_.order_id_){0}
  };
}

CUserMsg_HudError::~CUserMsg_HudError() {
  // @@protoc_insertion_point(destructor:CUserMsg_HudError)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMsg_HudError::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMsg_HudError::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMsg_HudError::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_HudError)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.order_id_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_HudError::_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 order_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_order_id(&has_bits);
          _impl_.order_id_ = ::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* CUserMsg_HudError::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_HudError)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 order_id = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_order_id(), 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:CUserMsg_HudError)
  return target;
}

size_t CUserMsg_HudError::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_HudError)
  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 int32 order_id = 1;
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_order_id());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_HudError::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_HudError::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_HudError::GetClassData() const { return &_class_data_; }


void CUserMsg_HudError::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_HudError*>(&to_msg);
  auto& from = static_cast<const CUserMsg_HudError&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_HudError)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_has_order_id()) {
    _this->_internal_set_order_id(from._internal_order_id());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_HudError::CopyFrom(const CUserMsg_HudError& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_HudError)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMsg_HudError::IsInitialized() const {
  return true;
}

void CUserMsg_HudError::InternalSwap(CUserMsg_HudError* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.order_id_, other->_impl_.order_id_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_HudError::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[81]);
}

// ===================================================================

class CUserMsg_CustomGameEvent::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMsg_CustomGameEvent>()._impl_._has_bits_);
  static void set_has_event_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_data(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

CUserMsg_CustomGameEvent::CUserMsg_CustomGameEvent(::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:CUserMsg_CustomGameEvent)
}
CUserMsg_CustomGameEvent::CUserMsg_CustomGameEvent(const CUserMsg_CustomGameEvent& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMsg_CustomGameEvent* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.event_name_){}
    , decltype(_impl_.data_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.event_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.event_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_event_name()) {
    _this->_impl_.event_name_.Set(from._internal_event_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.data_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.data_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_data()) {
    _this->_impl_.data_.Set(from._internal_data(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:CUserMsg_CustomGameEvent)
}

inline void CUserMsg_CustomGameEvent::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_name_){}
    , decltype(_impl_.data_){}
  };
  _impl_.event_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.event_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.data_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.data_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMsg_CustomGameEvent::~CUserMsg_CustomGameEvent() {
  // @@protoc_insertion_point(destructor:CUserMsg_CustomGameEvent)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMsg_CustomGameEvent::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.event_name_.Destroy();
  _impl_.data_.Destroy();
}

void CUserMsg_CustomGameEvent::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMsg_CustomGameEvent::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMsg_CustomGameEvent)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.event_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.data_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMsg_CustomGameEvent::_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 string event_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_event_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMsg_CustomGameEvent.event_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bytes data = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_data();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          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* CUserMsg_CustomGameEvent::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMsg_CustomGameEvent)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string event_name = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_event_name().data(), static_cast<int>(this->_internal_event_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMsg_CustomGameEvent.event_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_event_name(), target);
  }

  // optional bytes data = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->WriteBytesMaybeAliased(
        2, 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:CUserMsg_CustomGameEvent)
  return target;
}

size_t CUserMsg_CustomGameEvent::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMsg_CustomGameEvent)
  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 & 0x00000003u) {
    // optional string event_name = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_event_name());
    }

    // optional bytes data = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_data());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMsg_CustomGameEvent::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMsg_CustomGameEvent::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMsg_CustomGameEvent::GetClassData() const { return &_class_data_; }


void CUserMsg_CustomGameEvent::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMsg_CustomGameEvent*>(&to_msg);
  auto& from = static_cast<const CUserMsg_CustomGameEvent&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMsg_CustomGameEvent)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_event_name(from._internal_event_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_data(from._internal_data());
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMsg_CustomGameEvent::CopyFrom(const CUserMsg_CustomGameEvent& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMsg_CustomGameEvent)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMsg_CustomGameEvent::IsInitialized() const {
  return true;
}

void CUserMsg_CustomGameEvent::InternalSwap(CUserMsg_CustomGameEvent* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.event_name_, lhs_arena,
      &other->_impl_.event_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.data_, lhs_arena,
      &other->_impl_.data_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMsg_CustomGameEvent::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[82]);
}

// ===================================================================

class CUserMessageHapticsManagerPulse::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageHapticsManagerPulse>()._impl_._has_bits_);
  static void set_has_hand_id(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_effect_amplitude(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_effect_frequency(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_effect_duration(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessageHapticsManagerPulse::CUserMessageHapticsManagerPulse(::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:CUserMessageHapticsManagerPulse)
}
CUserMessageHapticsManagerPulse::CUserMessageHapticsManagerPulse(const CUserMessageHapticsManagerPulse& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageHapticsManagerPulse* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.hand_id_){}
    , decltype(_impl_.effect_amplitude_){}
    , decltype(_impl_.effect_frequency_){}
    , decltype(_impl_.effect_duration_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.hand_id_, &from._impl_.hand_id_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.effect_duration_) -
    reinterpret_cast<char*>(&_impl_.hand_id_)) + sizeof(_impl_.effect_duration_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageHapticsManagerPulse)
}

inline void CUserMessageHapticsManagerPulse::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_.hand_id_){0}
    , decltype(_impl_.effect_amplitude_){0}
    , decltype(_impl_.effect_frequency_){0}
    , decltype(_impl_.effect_duration_){0}
  };
}

CUserMessageHapticsManagerPulse::~CUserMessageHapticsManagerPulse() {
  // @@protoc_insertion_point(destructor:CUserMessageHapticsManagerPulse)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageHapticsManagerPulse::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageHapticsManagerPulse::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageHapticsManagerPulse::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageHapticsManagerPulse)
  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) {
    ::memset(&_impl_.hand_id_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.effect_duration_) -
        reinterpret_cast<char*>(&_impl_.hand_id_)) + sizeof(_impl_.effect_duration_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageHapticsManagerPulse::_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 hand_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_hand_id(&has_bits);
          _impl_.hand_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float effect_amplitude = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_effect_amplitude(&has_bits);
          _impl_.effect_amplitude_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float effect_frequency = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_effect_frequency(&has_bits);
          _impl_.effect_frequency_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float effect_duration = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_effect_duration(&has_bits);
          _impl_.effect_duration_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageHapticsManagerPulse::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageHapticsManagerPulse)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 hand_id = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_hand_id(), target);
  }

  // optional float effect_amplitude = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_effect_amplitude(), target);
  }

  // optional float effect_frequency = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_effect_frequency(), target);
  }

  // optional float effect_duration = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_effect_duration(), 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:CUserMessageHapticsManagerPulse)
  return target;
}

size_t CUserMessageHapticsManagerPulse::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageHapticsManagerPulse)
  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 & 0x0000000fu) {
    // optional int32 hand_id = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_hand_id());
    }

    // optional float effect_amplitude = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional float effect_frequency = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional float effect_duration = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageHapticsManagerPulse::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageHapticsManagerPulse::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageHapticsManagerPulse::GetClassData() const { return &_class_data_; }


void CUserMessageHapticsManagerPulse::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageHapticsManagerPulse*>(&to_msg);
  auto& from = static_cast<const CUserMessageHapticsManagerPulse&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageHapticsManagerPulse)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.hand_id_ = from._impl_.hand_id_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.effect_amplitude_ = from._impl_.effect_amplitude_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.effect_frequency_ = from._impl_.effect_frequency_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.effect_duration_ = from._impl_.effect_duration_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageHapticsManagerPulse::CopyFrom(const CUserMessageHapticsManagerPulse& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageHapticsManagerPulse)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageHapticsManagerPulse::IsInitialized() const {
  return true;
}

void CUserMessageHapticsManagerPulse::InternalSwap(CUserMessageHapticsManagerPulse* 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(CUserMessageHapticsManagerPulse, _impl_.effect_duration_)
      + sizeof(CUserMessageHapticsManagerPulse::_impl_.effect_duration_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageHapticsManagerPulse, _impl_.hand_id_)>(
          reinterpret_cast<char*>(&_impl_.hand_id_),
          reinterpret_cast<char*>(&other->_impl_.hand_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageHapticsManagerPulse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[83]);
}

// ===================================================================

class CUserMessageHapticsManagerEffect::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageHapticsManagerEffect>()._impl_._has_bits_);
  static void set_has_hand_id(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_effect_name_hash_code(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_effect_scale(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

CUserMessageHapticsManagerEffect::CUserMessageHapticsManagerEffect(::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:CUserMessageHapticsManagerEffect)
}
CUserMessageHapticsManagerEffect::CUserMessageHapticsManagerEffect(const CUserMessageHapticsManagerEffect& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageHapticsManagerEffect* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.hand_id_){}
    , decltype(_impl_.effect_name_hash_code_){}
    , decltype(_impl_.effect_scale_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.hand_id_, &from._impl_.hand_id_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.effect_scale_) -
    reinterpret_cast<char*>(&_impl_.hand_id_)) + sizeof(_impl_.effect_scale_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageHapticsManagerEffect)
}

inline void CUserMessageHapticsManagerEffect::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_.hand_id_){0}
    , decltype(_impl_.effect_name_hash_code_){0u}
    , decltype(_impl_.effect_scale_){0}
  };
}

CUserMessageHapticsManagerEffect::~CUserMessageHapticsManagerEffect() {
  // @@protoc_insertion_point(destructor:CUserMessageHapticsManagerEffect)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageHapticsManagerEffect::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageHapticsManagerEffect::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageHapticsManagerEffect::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageHapticsManagerEffect)
  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_.hand_id_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.effect_scale_) -
        reinterpret_cast<char*>(&_impl_.hand_id_)) + sizeof(_impl_.effect_scale_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageHapticsManagerEffect::_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 hand_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_hand_id(&has_bits);
          _impl_.hand_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 effect_name_hash_code = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_effect_name_hash_code(&has_bits);
          _impl_.effect_name_hash_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float effect_scale = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_effect_scale(&has_bits);
          _impl_.effect_scale_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageHapticsManagerEffect::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageHapticsManagerEffect)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 hand_id = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_hand_id(), target);
  }

  // optional uint32 effect_name_hash_code = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_effect_name_hash_code(), target);
  }

  // optional float effect_scale = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_effect_scale(), 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:CUserMessageHapticsManagerEffect)
  return target;
}

size_t CUserMessageHapticsManagerEffect::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageHapticsManagerEffect)
  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 int32 hand_id = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_hand_id());
    }

    // optional uint32 effect_name_hash_code = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_effect_name_hash_code());
    }

    // optional float effect_scale = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageHapticsManagerEffect::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageHapticsManagerEffect::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageHapticsManagerEffect::GetClassData() const { return &_class_data_; }


void CUserMessageHapticsManagerEffect::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageHapticsManagerEffect*>(&to_msg);
  auto& from = static_cast<const CUserMessageHapticsManagerEffect&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageHapticsManagerEffect)
  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_.hand_id_ = from._impl_.hand_id_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.effect_name_hash_code_ = from._impl_.effect_name_hash_code_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.effect_scale_ = from._impl_.effect_scale_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageHapticsManagerEffect::CopyFrom(const CUserMessageHapticsManagerEffect& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageHapticsManagerEffect)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageHapticsManagerEffect::IsInitialized() const {
  return true;
}

void CUserMessageHapticsManagerEffect::InternalSwap(CUserMessageHapticsManagerEffect* 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(CUserMessageHapticsManagerEffect, _impl_.effect_scale_)
      + sizeof(CUserMessageHapticsManagerEffect::_impl_.effect_scale_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageHapticsManagerEffect, _impl_.hand_id_)>(
          reinterpret_cast<char*>(&_impl_.hand_id_),
          reinterpret_cast<char*>(&other->_impl_.hand_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageHapticsManagerEffect::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[84]);
}

// ===================================================================

class CUserMessageAnimStateGraphState::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageAnimStateGraphState>()._impl_._has_bits_);
  static void set_has_entity_index(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_data(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessageAnimStateGraphState::CUserMessageAnimStateGraphState(::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:CUserMessageAnimStateGraphState)
}
CUserMessageAnimStateGraphState::CUserMessageAnimStateGraphState(const CUserMessageAnimStateGraphState& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageAnimStateGraphState* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.data_){}
    , decltype(_impl_.entity_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.data_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.data_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_data()) {
    _this->_impl_.data_.Set(from._internal_data(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.entity_index_ = from._impl_.entity_index_;
  // @@protoc_insertion_point(copy_constructor:CUserMessageAnimStateGraphState)
}

inline void CUserMessageAnimStateGraphState::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_.data_){}
    , decltype(_impl_.entity_index_){0}
  };
  _impl_.data_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.data_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessageAnimStateGraphState::~CUserMessageAnimStateGraphState() {
  // @@protoc_insertion_point(destructor:CUserMessageAnimStateGraphState)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageAnimStateGraphState::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.Destroy();
}

void CUserMessageAnimStateGraphState::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageAnimStateGraphState::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageAnimStateGraphState)
  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) {
    _impl_.data_.ClearNonDefaultToEmpty();
  }
  _impl_.entity_index_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageAnimStateGraphState::_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 entity_index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_entity_index(&has_bits);
          _impl_.entity_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bytes data = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_data();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          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* CUserMessageAnimStateGraphState::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageAnimStateGraphState)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 entity_index = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_entity_index(), target);
  }

  // optional bytes data = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->WriteBytesMaybeAliased(
        2, 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:CUserMessageAnimStateGraphState)
  return target;
}

size_t CUserMessageAnimStateGraphState::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageAnimStateGraphState)
  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 & 0x00000003u) {
    // optional bytes data = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_data());
    }

    // optional int32 entity_index = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_entity_index());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageAnimStateGraphState::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageAnimStateGraphState::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageAnimStateGraphState::GetClassData() const { return &_class_data_; }


void CUserMessageAnimStateGraphState::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageAnimStateGraphState*>(&to_msg);
  auto& from = static_cast<const CUserMessageAnimStateGraphState&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageAnimStateGraphState)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_data(from._internal_data());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.entity_index_ = from._impl_.entity_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageAnimStateGraphState::CopyFrom(const CUserMessageAnimStateGraphState& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageAnimStateGraphState)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageAnimStateGraphState::IsInitialized() const {
  return true;
}

void CUserMessageAnimStateGraphState::InternalSwap(CUserMessageAnimStateGraphState* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.data_, lhs_arena,
      &other->_impl_.data_, rhs_arena
  );
  swap(_impl_.entity_index_, other->_impl_.entity_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageAnimStateGraphState::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[85]);
}

// ===================================================================

class CUserMessageUpdateCssClasses::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageUpdateCssClasses>()._impl_._has_bits_);
  static void set_has_target_world_panel(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_css_classes(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_is_add(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

CUserMessageUpdateCssClasses::CUserMessageUpdateCssClasses(::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:CUserMessageUpdateCssClasses)
}
CUserMessageUpdateCssClasses::CUserMessageUpdateCssClasses(const CUserMessageUpdateCssClasses& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageUpdateCssClasses* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.css_classes_){}
    , decltype(_impl_.target_world_panel_){}
    , decltype(_impl_.is_add_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.css_classes_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.css_classes_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_css_classes()) {
    _this->_impl_.css_classes_.Set(from._internal_css_classes(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.target_world_panel_, &from._impl_.target_world_panel_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.is_add_) -
    reinterpret_cast<char*>(&_impl_.target_world_panel_)) + sizeof(_impl_.is_add_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageUpdateCssClasses)
}

inline void CUserMessageUpdateCssClasses::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_.css_classes_){}
    , decltype(_impl_.target_world_panel_){0}
    , decltype(_impl_.is_add_){false}
  };
  _impl_.css_classes_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.css_classes_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessageUpdateCssClasses::~CUserMessageUpdateCssClasses() {
  // @@protoc_insertion_point(destructor:CUserMessageUpdateCssClasses)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageUpdateCssClasses::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.css_classes_.Destroy();
}

void CUserMessageUpdateCssClasses::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageUpdateCssClasses::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageUpdateCssClasses)
  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) {
    _impl_.css_classes_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x00000006u) {
    ::memset(&_impl_.target_world_panel_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.is_add_) -
        reinterpret_cast<char*>(&_impl_.target_world_panel_)) + sizeof(_impl_.is_add_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageUpdateCssClasses::_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 target_world_panel = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_target_world_panel(&has_bits);
          _impl_.target_world_panel_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string css_classes = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_css_classes();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageUpdateCssClasses.css_classes");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool is_add = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_is_add(&has_bits);
          _impl_.is_add_ = ::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* CUserMessageUpdateCssClasses::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageUpdateCssClasses)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 target_world_panel = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_target_world_panel(), target);
  }

  // optional string css_classes = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_css_classes().data(), static_cast<int>(this->_internal_css_classes().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageUpdateCssClasses.css_classes");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_css_classes(), target);
  }

  // optional bool is_add = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_is_add(), 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:CUserMessageUpdateCssClasses)
  return target;
}

size_t CUserMessageUpdateCssClasses::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageUpdateCssClasses)
  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 string css_classes = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_css_classes());
    }

    // optional int32 target_world_panel = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_target_world_panel());
    }

    // optional bool is_add = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageUpdateCssClasses::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageUpdateCssClasses::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageUpdateCssClasses::GetClassData() const { return &_class_data_; }


void CUserMessageUpdateCssClasses::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageUpdateCssClasses*>(&to_msg);
  auto& from = static_cast<const CUserMessageUpdateCssClasses&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageUpdateCssClasses)
  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->_internal_set_css_classes(from._internal_css_classes());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.target_world_panel_ = from._impl_.target_world_panel_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.is_add_ = from._impl_.is_add_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageUpdateCssClasses::CopyFrom(const CUserMessageUpdateCssClasses& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageUpdateCssClasses)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageUpdateCssClasses::IsInitialized() const {
  return true;
}

void CUserMessageUpdateCssClasses::InternalSwap(CUserMessageUpdateCssClasses* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.css_classes_, lhs_arena,
      &other->_impl_.css_classes_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageUpdateCssClasses, _impl_.is_add_)
      + sizeof(CUserMessageUpdateCssClasses::_impl_.is_add_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageUpdateCssClasses, _impl_.target_world_panel_)>(
          reinterpret_cast<char*>(&_impl_.target_world_panel_),
          reinterpret_cast<char*>(&other->_impl_.target_world_panel_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageUpdateCssClasses::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[86]);
}

// ===================================================================

class CUserMessageServerFrameTime::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageServerFrameTime>()._impl_._has_bits_);
  static void set_has_frame_time(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessageServerFrameTime::CUserMessageServerFrameTime(::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:CUserMessageServerFrameTime)
}
CUserMessageServerFrameTime::CUserMessageServerFrameTime(const CUserMessageServerFrameTime& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageServerFrameTime* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.frame_time_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.frame_time_ = from._impl_.frame_time_;
  // @@protoc_insertion_point(copy_constructor:CUserMessageServerFrameTime)
}

inline void CUserMessageServerFrameTime::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_.frame_time_){0}
  };
}

CUserMessageServerFrameTime::~CUserMessageServerFrameTime() {
  // @@protoc_insertion_point(destructor:CUserMessageServerFrameTime)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageServerFrameTime::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageServerFrameTime::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageServerFrameTime::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageServerFrameTime)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.frame_time_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageServerFrameTime::_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 float frame_time = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_frame_time(&has_bits);
          _impl_.frame_time_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageServerFrameTime::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageServerFrameTime)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float frame_time = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_frame_time(), 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:CUserMessageServerFrameTime)
  return target;
}

size_t CUserMessageServerFrameTime::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageServerFrameTime)
  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 float frame_time = 1;
  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 CUserMessageServerFrameTime::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageServerFrameTime::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageServerFrameTime::GetClassData() const { return &_class_data_; }


void CUserMessageServerFrameTime::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageServerFrameTime*>(&to_msg);
  auto& from = static_cast<const CUserMessageServerFrameTime&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageServerFrameTime)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_has_frame_time()) {
    _this->_internal_set_frame_time(from._internal_frame_time());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageServerFrameTime::CopyFrom(const CUserMessageServerFrameTime& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageServerFrameTime)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageServerFrameTime::IsInitialized() const {
  return true;
}

void CUserMessageServerFrameTime::InternalSwap(CUserMessageServerFrameTime* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.frame_time_, other->_impl_.frame_time_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageServerFrameTime::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[87]);
}

// ===================================================================

class CUserMessageLagCompensationError::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageLagCompensationError>()._impl_._has_bits_);
  static void set_has_distance(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessageLagCompensationError::CUserMessageLagCompensationError(::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:CUserMessageLagCompensationError)
}
CUserMessageLagCompensationError::CUserMessageLagCompensationError(const CUserMessageLagCompensationError& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageLagCompensationError* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.distance_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.distance_ = from._impl_.distance_;
  // @@protoc_insertion_point(copy_constructor:CUserMessageLagCompensationError)
}

inline void CUserMessageLagCompensationError::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_.distance_){0}
  };
}

CUserMessageLagCompensationError::~CUserMessageLagCompensationError() {
  // @@protoc_insertion_point(destructor:CUserMessageLagCompensationError)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageLagCompensationError::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageLagCompensationError::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageLagCompensationError::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageLagCompensationError)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.distance_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageLagCompensationError::_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 float distance = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_distance(&has_bits);
          _impl_.distance_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } 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* CUserMessageLagCompensationError::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageLagCompensationError)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional float distance = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(1, this->_internal_distance(), 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:CUserMessageLagCompensationError)
  return target;
}

size_t CUserMessageLagCompensationError::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageLagCompensationError)
  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 float distance = 1;
  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 CUserMessageLagCompensationError::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageLagCompensationError::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageLagCompensationError::GetClassData() const { return &_class_data_; }


void CUserMessageLagCompensationError::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageLagCompensationError*>(&to_msg);
  auto& from = static_cast<const CUserMessageLagCompensationError&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageLagCompensationError)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_has_distance()) {
    _this->_internal_set_distance(from._internal_distance());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageLagCompensationError::CopyFrom(const CUserMessageLagCompensationError& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageLagCompensationError)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageLagCompensationError::IsInitialized() const {
  return true;
}

void CUserMessageLagCompensationError::InternalSwap(CUserMessageLagCompensationError* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.distance_, other->_impl_.distance_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageLagCompensationError::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[88]);
}

// ===================================================================

class CUserMessageRequestDllStatus::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageRequestDllStatus>()._impl_._has_bits_);
  static void set_has_dll_action(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_full_report(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

CUserMessageRequestDllStatus::CUserMessageRequestDllStatus(::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:CUserMessageRequestDllStatus)
}
CUserMessageRequestDllStatus::CUserMessageRequestDllStatus(const CUserMessageRequestDllStatus& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRequestDllStatus* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.dll_action_){}
    , decltype(_impl_.full_report_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.dll_action_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.dll_action_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_dll_action()) {
    _this->_impl_.dll_action_.Set(from._internal_dll_action(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.full_report_ = from._impl_.full_report_;
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestDllStatus)
}

inline void CUserMessageRequestDllStatus::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_.dll_action_){}
    , decltype(_impl_.full_report_){false}
  };
  _impl_.dll_action_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.dll_action_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessageRequestDllStatus::~CUserMessageRequestDllStatus() {
  // @@protoc_insertion_point(destructor:CUserMessageRequestDllStatus)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageRequestDllStatus::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.dll_action_.Destroy();
}

void CUserMessageRequestDllStatus::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageRequestDllStatus::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRequestDllStatus)
  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) {
    _impl_.dll_action_.ClearNonDefaultToEmpty();
  }
  _impl_.full_report_ = false;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRequestDllStatus::_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 string dll_action = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_dll_action();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageRequestDllStatus.dll_action");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bool full_report = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_full_report(&has_bits);
          _impl_.full_report_ = ::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* CUserMessageRequestDllStatus::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRequestDllStatus)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string dll_action = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_dll_action().data(), static_cast<int>(this->_internal_dll_action().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageRequestDllStatus.dll_action");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_dll_action(), target);
  }

  // optional bool full_report = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_full_report(), 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:CUserMessageRequestDllStatus)
  return target;
}

size_t CUserMessageRequestDllStatus::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRequestDllStatus)
  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 & 0x00000003u) {
    // optional string dll_action = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_dll_action());
    }

    // optional bool full_report = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 1;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestDllStatus::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageRequestDllStatus::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestDllStatus::GetClassData() const { return &_class_data_; }


void CUserMessageRequestDllStatus::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRequestDllStatus*>(&to_msg);
  auto& from = static_cast<const CUserMessageRequestDllStatus&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRequestDllStatus)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_dll_action(from._internal_dll_action());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.full_report_ = from._impl_.full_report_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageRequestDllStatus::CopyFrom(const CUserMessageRequestDllStatus& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageRequestDllStatus)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageRequestDllStatus::IsInitialized() const {
  return true;
}

void CUserMessageRequestDllStatus::InternalSwap(CUserMessageRequestDllStatus* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.dll_action_, lhs_arena,
      &other->_impl_.dll_action_, rhs_arena
  );
  swap(_impl_.full_report_, other->_impl_.full_report_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestDllStatus::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[89]);
}

// ===================================================================

class CUserMessageRequestUtilAction::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageRequestUtilAction>()._impl_._has_bits_);
  static void set_has_util1(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_util2(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_util3(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_util4(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_util5(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

CUserMessageRequestUtilAction::CUserMessageRequestUtilAction(::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:CUserMessageRequestUtilAction)
}
CUserMessageRequestUtilAction::CUserMessageRequestUtilAction(const CUserMessageRequestUtilAction& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRequestUtilAction* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.util1_){}
    , decltype(_impl_.util2_){}
    , decltype(_impl_.util3_){}
    , decltype(_impl_.util4_){}
    , decltype(_impl_.util5_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.util1_, &from._impl_.util1_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.util5_) -
    reinterpret_cast<char*>(&_impl_.util1_)) + sizeof(_impl_.util5_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestUtilAction)
}

inline void CUserMessageRequestUtilAction::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_.util1_){0}
    , decltype(_impl_.util2_){0}
    , decltype(_impl_.util3_){0}
    , decltype(_impl_.util4_){0}
    , decltype(_impl_.util5_){0}
  };
}

CUserMessageRequestUtilAction::~CUserMessageRequestUtilAction() {
  // @@protoc_insertion_point(destructor:CUserMessageRequestUtilAction)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageRequestUtilAction::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageRequestUtilAction::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageRequestUtilAction::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRequestUtilAction)
  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 & 0x0000001fu) {
    ::memset(&_impl_.util1_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.util5_) -
        reinterpret_cast<char*>(&_impl_.util1_)) + sizeof(_impl_.util5_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRequestUtilAction::_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 util1 = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_util1(&has_bits);
          _impl_.util1_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 util2 = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_util2(&has_bits);
          _impl_.util2_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 util3 = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_util3(&has_bits);
          _impl_.util3_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 util4 = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_util4(&has_bits);
          _impl_.util4_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 util5 = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_util5(&has_bits);
          _impl_.util5_ = ::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* CUserMessageRequestUtilAction::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRequestUtilAction)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 util1 = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_util1(), target);
  }

  // optional int32 util2 = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_util2(), target);
  }

  // optional int32 util3 = 4;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_util3(), target);
  }

  // optional int32 util4 = 5;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_util4(), target);
  }

  // optional int32 util5 = 6;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_util5(), 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:CUserMessageRequestUtilAction)
  return target;
}

size_t CUserMessageRequestUtilAction::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRequestUtilAction)
  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 & 0x0000001fu) {
    // optional int32 util1 = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_util1());
    }

    // optional int32 util2 = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_util2());
    }

    // optional int32 util3 = 4;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_util3());
    }

    // optional int32 util4 = 5;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_util4());
    }

    // optional int32 util5 = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_util5());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestUtilAction::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageRequestUtilAction::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestUtilAction::GetClassData() const { return &_class_data_; }


void CUserMessageRequestUtilAction::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRequestUtilAction*>(&to_msg);
  auto& from = static_cast<const CUserMessageRequestUtilAction&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRequestUtilAction)
  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 & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.util1_ = from._impl_.util1_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.util2_ = from._impl_.util2_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.util3_ = from._impl_.util3_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.util4_ = from._impl_.util4_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.util5_ = from._impl_.util5_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageRequestUtilAction::CopyFrom(const CUserMessageRequestUtilAction& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageRequestUtilAction)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageRequestUtilAction::IsInitialized() const {
  return true;
}

void CUserMessageRequestUtilAction::InternalSwap(CUserMessageRequestUtilAction* 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(CUserMessageRequestUtilAction, _impl_.util5_)
      + sizeof(CUserMessageRequestUtilAction::_impl_.util5_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageRequestUtilAction, _impl_.util1_)>(
          reinterpret_cast<char*>(&_impl_.util1_),
          reinterpret_cast<char*>(&other->_impl_.util1_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestUtilAction::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[90]);
}

// ===================================================================

class CUserMessage_UtilMsg_Response_ItemDetail::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_UtilMsg_Response_ItemDetail>()._impl_._has_bits_);
  static void set_has_index(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_crc(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessage_UtilMsg_Response_ItemDetail::CUserMessage_UtilMsg_Response_ItemDetail(::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:CUserMessage_UtilMsg_Response.ItemDetail)
}
CUserMessage_UtilMsg_Response_ItemDetail::CUserMessage_UtilMsg_Response_ItemDetail(const CUserMessage_UtilMsg_Response_ItemDetail& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_UtilMsg_Response_ItemDetail* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.index_){}
    , decltype(_impl_.hash_){}
    , decltype(_impl_.crc_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.index_, &from._impl_.index_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.crc_) -
    reinterpret_cast<char*>(&_impl_.index_)) + sizeof(_impl_.crc_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_UtilMsg_Response.ItemDetail)
}

inline void CUserMessage_UtilMsg_Response_ItemDetail::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_.name_){}
    , decltype(_impl_.index_){0}
    , decltype(_impl_.hash_){0}
    , decltype(_impl_.crc_){0}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_UtilMsg_Response_ItemDetail::~CUserMessage_UtilMsg_Response_ItemDetail() {
  // @@protoc_insertion_point(destructor:CUserMessage_UtilMsg_Response.ItemDetail)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_UtilMsg_Response_ItemDetail::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
}

void CUserMessage_UtilMsg_Response_ItemDetail::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_UtilMsg_Response_ItemDetail::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_UtilMsg_Response.ItemDetail)
  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) {
    _impl_.name_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.index_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.crc_) -
        reinterpret_cast<char*>(&_impl_.index_)) + sizeof(_impl_.crc_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_UtilMsg_Response_ItemDetail::_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 index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_index(&has_bits);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 hash = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_hash(&has_bits);
          _impl_.hash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 crc = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_crc(&has_bits);
          _impl_.crc_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string name = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_UtilMsg_Response.ItemDetail.name");
          #endif  // !NDEBUG
        } 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* CUserMessage_UtilMsg_Response_ItemDetail::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_UtilMsg_Response.ItemDetail)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 index = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_index(), target);
  }

  // optional int32 hash = 2;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_hash(), target);
  }

  // optional int32 crc = 3;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_crc(), target);
  }

  // optional string name = 4;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_UtilMsg_Response.ItemDetail.name");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_name(), 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:CUserMessage_UtilMsg_Response.ItemDetail)
  return target;
}

size_t CUserMessage_UtilMsg_Response_ItemDetail::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_UtilMsg_Response.ItemDetail)
  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 & 0x0000000fu) {
    // optional string name = 4;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional int32 index = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_index());
    }

    // optional int32 hash = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_hash());
    }

    // optional int32 crc = 3;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_crc());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_UtilMsg_Response_ItemDetail::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_UtilMsg_Response_ItemDetail::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_UtilMsg_Response_ItemDetail::GetClassData() const { return &_class_data_; }


void CUserMessage_UtilMsg_Response_ItemDetail::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_UtilMsg_Response_ItemDetail*>(&to_msg);
  auto& from = static_cast<const CUserMessage_UtilMsg_Response_ItemDetail&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_UtilMsg_Response.ItemDetail)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.index_ = from._impl_.index_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.hash_ = from._impl_.hash_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.crc_ = from._impl_.crc_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_UtilMsg_Response_ItemDetail::CopyFrom(const CUserMessage_UtilMsg_Response_ItemDetail& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_UtilMsg_Response.ItemDetail)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_UtilMsg_Response_ItemDetail::IsInitialized() const {
  return true;
}

void CUserMessage_UtilMsg_Response_ItemDetail::InternalSwap(CUserMessage_UtilMsg_Response_ItemDetail* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_UtilMsg_Response_ItemDetail, _impl_.crc_)
      + sizeof(CUserMessage_UtilMsg_Response_ItemDetail::_impl_.crc_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_UtilMsg_Response_ItemDetail, _impl_.index_)>(
          reinterpret_cast<char*>(&_impl_.index_),
          reinterpret_cast<char*>(&other->_impl_.index_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_UtilMsg_Response_ItemDetail::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[91]);
}

// ===================================================================

class CUserMessage_UtilMsg_Response::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_UtilMsg_Response>()._impl_._has_bits_);
  static void set_has_crc(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_item_count(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_crc2(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_item_count2(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_client_timestamp(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_platform(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_itemgroup(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_total_count(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_total_count2(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
};

CUserMessage_UtilMsg_Response::CUserMessage_UtilMsg_Response(::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:CUserMessage_UtilMsg_Response)
}
CUserMessage_UtilMsg_Response::CUserMessage_UtilMsg_Response(const CUserMessage_UtilMsg_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_UtilMsg_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.crc_part_){from._impl_.crc_part_}
    , decltype(_impl_.crc_part2_){from._impl_.crc_part2_}
    , decltype(_impl_.itemdetails_){from._impl_.itemdetails_}
    , decltype(_impl_.crc_){}
    , decltype(_impl_.item_count_){}
    , decltype(_impl_.crc2_){}
    , decltype(_impl_.item_count2_){}
    , decltype(_impl_.client_timestamp_){}
    , decltype(_impl_.platform_){}
    , decltype(_impl_.itemgroup_){}
    , decltype(_impl_.total_count_){}
    , decltype(_impl_.total_count2_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.crc_, &from._impl_.crc_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.total_count2_) -
    reinterpret_cast<char*>(&_impl_.crc_)) + sizeof(_impl_.total_count2_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_UtilMsg_Response)
}

inline void CUserMessage_UtilMsg_Response::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_.crc_part_){arena}
    , decltype(_impl_.crc_part2_){arena}
    , decltype(_impl_.itemdetails_){arena}
    , decltype(_impl_.crc_){0u}
    , decltype(_impl_.item_count_){0}
    , decltype(_impl_.crc2_){0u}
    , decltype(_impl_.item_count2_){0}
    , decltype(_impl_.client_timestamp_){0}
    , decltype(_impl_.platform_){0}
    , decltype(_impl_.itemgroup_){0}
    , decltype(_impl_.total_count_){0}
    , decltype(_impl_.total_count2_){0}
  };
}

CUserMessage_UtilMsg_Response::~CUserMessage_UtilMsg_Response() {
  // @@protoc_insertion_point(destructor:CUserMessage_UtilMsg_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_UtilMsg_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.crc_part_.~RepeatedField();
  _impl_.crc_part2_.~RepeatedField();
  _impl_.itemdetails_.~RepeatedPtrField();
}

void CUserMessage_UtilMsg_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_UtilMsg_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_UtilMsg_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.crc_part_.Clear();
  _impl_.crc_part2_.Clear();
  _impl_.itemdetails_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    ::memset(&_impl_.crc_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.total_count_) -
        reinterpret_cast<char*>(&_impl_.crc_)) + sizeof(_impl_.total_count_));
  }
  _impl_.total_count2_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_UtilMsg_Response::_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 crc = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_crc(&has_bits);
          _impl_.crc_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional int32 item_count = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_item_count(&has_bits);
          _impl_.item_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 crc2 = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_crc2(&has_bits);
          _impl_.crc2_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional int32 item_count2 = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_item_count2(&has_bits);
          _impl_.item_count2_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated int32 crc_part = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_crc_part(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<40>(ptr));
        } else if (static_cast<uint8_t>(tag) == 42) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_crc_part(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated int32 crc_part2 = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_crc_part2(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<48>(ptr));
        } else if (static_cast<uint8_t>(tag) == 50) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_crc_part2(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 client_timestamp = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_client_timestamp(&has_bits);
          _impl_.client_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 platform = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_platform(&has_bits);
          _impl_.platform_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_UtilMsg_Response.ItemDetail itemdetails = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_itemdetails(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional int32 itemgroup = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_itemgroup(&has_bits);
          _impl_.itemgroup_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 total_count = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_total_count(&has_bits);
          _impl_.total_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 total_count2 = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) {
          _Internal::set_has_total_count2(&has_bits);
          _impl_.total_count2_ = ::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* CUserMessage_UtilMsg_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_UtilMsg_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed32 crc = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(1, this->_internal_crc(), target);
  }

  // optional int32 item_count = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_item_count(), target);
  }

  // optional fixed32 crc2 = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(3, this->_internal_crc2(), target);
  }

  // optional int32 item_count2 = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_item_count2(), target);
  }

  // repeated int32 crc_part = 5;
  for (int i = 0, n = this->_internal_crc_part_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_crc_part(i), target);
  }

  // repeated int32 crc_part2 = 6;
  for (int i = 0, n = this->_internal_crc_part2_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_crc_part2(i), target);
  }

  // optional int32 client_timestamp = 7;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(7, this->_internal_client_timestamp(), target);
  }

  // optional int32 platform = 8;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(8, this->_internal_platform(), target);
  }

  // repeated .CUserMessage_UtilMsg_Response.ItemDetail itemdetails = 9;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_itemdetails_size()); i < n; i++) {
    const auto& repfield = this->_internal_itemdetails(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(9, repfield, repfield.GetCachedSize(), target, stream);
  }

  // optional int32 itemgroup = 10;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(10, this->_internal_itemgroup(), target);
  }

  // optional int32 total_count = 11;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(11, this->_internal_total_count(), target);
  }

  // optional int32 total_count2 = 12;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(12, this->_internal_total_count2(), 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:CUserMessage_UtilMsg_Response)
  return target;
}

size_t CUserMessage_UtilMsg_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_UtilMsg_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated int32 crc_part = 5;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int32Size(this->_impl_.crc_part_);
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_crc_part_size());
    total_size += data_size;
  }

  // repeated int32 crc_part2 = 6;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int32Size(this->_impl_.crc_part2_);
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_crc_part2_size());
    total_size += data_size;
  }

  // repeated .CUserMessage_UtilMsg_Response.ItemDetail itemdetails = 9;
  total_size += 1UL * this->_internal_itemdetails_size();
  for (const auto& msg : this->_impl_.itemdetails_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional fixed32 crc = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional int32 item_count = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_item_count());
    }

    // optional fixed32 crc2 = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional int32 item_count2 = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_item_count2());
    }

    // optional int32 client_timestamp = 7;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_client_timestamp());
    }

    // optional int32 platform = 8;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_platform());
    }

    // optional int32 itemgroup = 10;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_itemgroup());
    }

    // optional int32 total_count = 11;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_total_count());
    }

  }
  // optional int32 total_count2 = 12;
  if (cached_has_bits & 0x00000100u) {
    total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_total_count2());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_UtilMsg_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_UtilMsg_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_UtilMsg_Response::GetClassData() const { return &_class_data_; }


void CUserMessage_UtilMsg_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_UtilMsg_Response*>(&to_msg);
  auto& from = static_cast<const CUserMessage_UtilMsg_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_UtilMsg_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.crc_part_.MergeFrom(from._impl_.crc_part_);
  _this->_impl_.crc_part2_.MergeFrom(from._impl_.crc_part2_);
  _this->_impl_.itemdetails_.MergeFrom(from._impl_.itemdetails_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.crc_ = from._impl_.crc_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.item_count_ = from._impl_.item_count_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.crc2_ = from._impl_.crc2_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.item_count2_ = from._impl_.item_count2_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.client_timestamp_ = from._impl_.client_timestamp_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.platform_ = from._impl_.platform_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.itemgroup_ = from._impl_.itemgroup_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.total_count_ = from._impl_.total_count_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00000100u) {
    _this->_internal_set_total_count2(from._internal_total_count2());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_UtilMsg_Response::CopyFrom(const CUserMessage_UtilMsg_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_UtilMsg_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_UtilMsg_Response::IsInitialized() const {
  return true;
}

void CUserMessage_UtilMsg_Response::InternalSwap(CUserMessage_UtilMsg_Response* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.crc_part_.InternalSwap(&other->_impl_.crc_part_);
  _impl_.crc_part2_.InternalSwap(&other->_impl_.crc_part2_);
  _impl_.itemdetails_.InternalSwap(&other->_impl_.itemdetails_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_UtilMsg_Response, _impl_.total_count2_)
      + sizeof(CUserMessage_UtilMsg_Response::_impl_.total_count2_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_UtilMsg_Response, _impl_.crc_)>(
          reinterpret_cast<char*>(&_impl_.crc_),
          reinterpret_cast<char*>(&other->_impl_.crc_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_UtilMsg_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[92]);
}

// ===================================================================

class CUserMessage_DllStatus_CVDiagnostic::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_DllStatus_CVDiagnostic>()._impl_._has_bits_);
  static void set_has_id(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_extended(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_value(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_string_value(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessage_DllStatus_CVDiagnostic::CUserMessage_DllStatus_CVDiagnostic(::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:CUserMessage_DllStatus.CVDiagnostic)
}
CUserMessage_DllStatus_CVDiagnostic::CUserMessage_DllStatus_CVDiagnostic(const CUserMessage_DllStatus_CVDiagnostic& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_DllStatus_CVDiagnostic* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.string_value_){}
    , decltype(_impl_.id_){}
    , decltype(_impl_.extended_){}
    , decltype(_impl_.value_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.string_value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.string_value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_string_value()) {
    _this->_impl_.string_value_.Set(from._internal_string_value(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.id_, &from._impl_.id_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.value_) -
    reinterpret_cast<char*>(&_impl_.id_)) + sizeof(_impl_.value_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_DllStatus.CVDiagnostic)
}

inline void CUserMessage_DllStatus_CVDiagnostic::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_.string_value_){}
    , decltype(_impl_.id_){0u}
    , decltype(_impl_.extended_){0u}
    , decltype(_impl_.value_){uint64_t{0u}}
  };
  _impl_.string_value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.string_value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_DllStatus_CVDiagnostic::~CUserMessage_DllStatus_CVDiagnostic() {
  // @@protoc_insertion_point(destructor:CUserMessage_DllStatus.CVDiagnostic)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_DllStatus_CVDiagnostic::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.string_value_.Destroy();
}

void CUserMessage_DllStatus_CVDiagnostic::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_DllStatus_CVDiagnostic::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_DllStatus.CVDiagnostic)
  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) {
    _impl_.string_value_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.id_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.value_) -
        reinterpret_cast<char*>(&_impl_.id_)) + sizeof(_impl_.value_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_DllStatus_CVDiagnostic::_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 uint32 id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_id(&has_bits);
          _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 extended = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_extended(&has_bits);
          _impl_.extended_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 value = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_value(&has_bits);
          _impl_.value_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string string_value = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_string_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_DllStatus.CVDiagnostic.string_value");
          #endif  // !NDEBUG
        } 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* CUserMessage_DllStatus_CVDiagnostic::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_DllStatus.CVDiagnostic)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 id = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_id(), target);
  }

  // optional uint32 extended = 2;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_extended(), target);
  }

  // optional uint64 value = 3;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(3, this->_internal_value(), target);
  }

  // optional string string_value = 4;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_string_value().data(), static_cast<int>(this->_internal_string_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_DllStatus.CVDiagnostic.string_value");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_string_value(), 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:CUserMessage_DllStatus.CVDiagnostic)
  return target;
}

size_t CUserMessage_DllStatus_CVDiagnostic::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_DllStatus.CVDiagnostic)
  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 & 0x0000000fu) {
    // optional string string_value = 4;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_string_value());
    }

    // optional uint32 id = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id());
    }

    // optional uint32 extended = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_extended());
    }

    // optional uint64 value = 3;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_value());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_DllStatus_CVDiagnostic::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_DllStatus_CVDiagnostic::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_DllStatus_CVDiagnostic::GetClassData() const { return &_class_data_; }


void CUserMessage_DllStatus_CVDiagnostic::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_DllStatus_CVDiagnostic*>(&to_msg);
  auto& from = static_cast<const CUserMessage_DllStatus_CVDiagnostic&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_DllStatus.CVDiagnostic)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_string_value(from._internal_string_value());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.id_ = from._impl_.id_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.extended_ = from._impl_.extended_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.value_ = from._impl_.value_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_DllStatus_CVDiagnostic::CopyFrom(const CUserMessage_DllStatus_CVDiagnostic& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_DllStatus.CVDiagnostic)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_DllStatus_CVDiagnostic::IsInitialized() const {
  return true;
}

void CUserMessage_DllStatus_CVDiagnostic::InternalSwap(CUserMessage_DllStatus_CVDiagnostic* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.string_value_, lhs_arena,
      &other->_impl_.string_value_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus_CVDiagnostic, _impl_.value_)
      + sizeof(CUserMessage_DllStatus_CVDiagnostic::_impl_.value_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus_CVDiagnostic, _impl_.id_)>(
          reinterpret_cast<char*>(&_impl_.id_),
          reinterpret_cast<char*>(&other->_impl_.id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_DllStatus_CVDiagnostic::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[93]);
}

// ===================================================================

class CUserMessage_DllStatus_CModule::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_DllStatus_CModule>()._impl_._has_bits_);
  static void set_has_base_addr(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_size(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_timestamp(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessage_DllStatus_CModule::CUserMessage_DllStatus_CModule(::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:CUserMessage_DllStatus.CModule)
}
CUserMessage_DllStatus_CModule::CUserMessage_DllStatus_CModule(const CUserMessage_DllStatus_CModule& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_DllStatus_CModule* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.base_addr_){}
    , decltype(_impl_.size_){}
    , decltype(_impl_.timestamp_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.base_addr_, &from._impl_.base_addr_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.timestamp_) -
    reinterpret_cast<char*>(&_impl_.base_addr_)) + sizeof(_impl_.timestamp_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_DllStatus.CModule)
}

inline void CUserMessage_DllStatus_CModule::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_.name_){}
    , decltype(_impl_.base_addr_){uint64_t{0u}}
    , decltype(_impl_.size_){0u}
    , decltype(_impl_.timestamp_){0u}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_DllStatus_CModule::~CUserMessage_DllStatus_CModule() {
  // @@protoc_insertion_point(destructor:CUserMessage_DllStatus.CModule)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_DllStatus_CModule::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
}

void CUserMessage_DllStatus_CModule::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_DllStatus_CModule::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_DllStatus.CModule)
  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) {
    _impl_.name_.ClearNonDefaultToEmpty();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&_impl_.base_addr_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.timestamp_) -
        reinterpret_cast<char*>(&_impl_.base_addr_)) + sizeof(_impl_.timestamp_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_DllStatus_CModule::_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 uint64 base_addr = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_base_addr(&has_bits);
          _impl_.base_addr_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_DllStatus.CModule.name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 size = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_size(&has_bits);
          _impl_.size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 timestamp = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_timestamp(&has_bits);
          _impl_.timestamp_ = ::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* CUserMessage_DllStatus_CModule::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_DllStatus.CModule)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint64 base_addr = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(1, this->_internal_base_addr(), target);
  }

  // optional string name = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_DllStatus.CModule.name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_name(), target);
  }

  // optional uint32 size = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_size(), target);
  }

  // optional uint32 timestamp = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_timestamp(), 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:CUserMessage_DllStatus.CModule)
  return target;
}

size_t CUserMessage_DllStatus_CModule::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_DllStatus.CModule)
  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 & 0x0000000fu) {
    // optional string name = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional uint64 base_addr = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_base_addr());
    }

    // optional uint32 size = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_size());
    }

    // optional uint32 timestamp = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_timestamp());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_DllStatus_CModule::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_DllStatus_CModule::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_DllStatus_CModule::GetClassData() const { return &_class_data_; }


void CUserMessage_DllStatus_CModule::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_DllStatus_CModule*>(&to_msg);
  auto& from = static_cast<const CUserMessage_DllStatus_CModule&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_DllStatus.CModule)
  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 & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.base_addr_ = from._impl_.base_addr_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.size_ = from._impl_.size_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.timestamp_ = from._impl_.timestamp_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_DllStatus_CModule::CopyFrom(const CUserMessage_DllStatus_CModule& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_DllStatus.CModule)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_DllStatus_CModule::IsInitialized() const {
  return true;
}

void CUserMessage_DllStatus_CModule::InternalSwap(CUserMessage_DllStatus_CModule* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus_CModule, _impl_.timestamp_)
      + sizeof(CUserMessage_DllStatus_CModule::_impl_.timestamp_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus_CModule, _impl_.base_addr_)>(
          reinterpret_cast<char*>(&_impl_.base_addr_),
          reinterpret_cast<char*>(&other->_impl_.base_addr_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_DllStatus_CModule::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[94]);
}

// ===================================================================

class CUserMessage_DllStatus::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_DllStatus>()._impl_._has_bits_);
  static void set_has_file_report(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_command_line(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_total_files(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_process_id(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_osversion(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_client_time(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

CUserMessage_DllStatus::CUserMessage_DllStatus(::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:CUserMessage_DllStatus)
}
CUserMessage_DllStatus::CUserMessage_DllStatus(const CUserMessage_DllStatus& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_DllStatus* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.diagnostics_){from._impl_.diagnostics_}
    , decltype(_impl_.modules_){from._impl_.modules_}
    , decltype(_impl_.file_report_){}
    , decltype(_impl_.command_line_){}
    , decltype(_impl_.total_files_){}
    , decltype(_impl_.process_id_){}
    , decltype(_impl_.client_time_){}
    , decltype(_impl_.osversion_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.file_report_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_report_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_file_report()) {
    _this->_impl_.file_report_.Set(from._internal_file_report(), 
      _this->GetArenaForAllocation());
  }
  _impl_.command_line_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.command_line_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_command_line()) {
    _this->_impl_.command_line_.Set(from._internal_command_line(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.total_files_, &from._impl_.total_files_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.osversion_) -
    reinterpret_cast<char*>(&_impl_.total_files_)) + sizeof(_impl_.osversion_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_DllStatus)
}

inline void CUserMessage_DllStatus::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_.diagnostics_){arena}
    , decltype(_impl_.modules_){arena}
    , decltype(_impl_.file_report_){}
    , decltype(_impl_.command_line_){}
    , decltype(_impl_.total_files_){0u}
    , decltype(_impl_.process_id_){0u}
    , decltype(_impl_.client_time_){uint64_t{0u}}
    , decltype(_impl_.osversion_){0}
  };
  _impl_.file_report_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.file_report_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.command_line_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.command_line_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_DllStatus::~CUserMessage_DllStatus() {
  // @@protoc_insertion_point(destructor:CUserMessage_DllStatus)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_DllStatus::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.diagnostics_.~RepeatedPtrField();
  _impl_.modules_.~RepeatedPtrField();
  _impl_.file_report_.Destroy();
  _impl_.command_line_.Destroy();
}

void CUserMessage_DllStatus::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_DllStatus::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_DllStatus)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.diagnostics_.Clear();
  _impl_.modules_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.file_report_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.command_line_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x0000003cu) {
    ::memset(&_impl_.total_files_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.osversion_) -
        reinterpret_cast<char*>(&_impl_.total_files_)) + sizeof(_impl_.osversion_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_DllStatus::_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 string file_report = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_file_report();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_DllStatus.file_report");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string command_line = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_command_line();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_DllStatus.command_line");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 total_files = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_total_files(&has_bits);
          _impl_.total_files_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 process_id = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_process_id(&has_bits);
          _impl_.process_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 osversion = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_osversion(&has_bits);
          _impl_.osversion_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 client_time = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_client_time(&has_bits);
          _impl_.client_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_DllStatus.CVDiagnostic diagnostics = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_diagnostics(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_DllStatus.CModule modules = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_modules(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(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* CUserMessage_DllStatus::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_DllStatus)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional string file_report = 1;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_file_report().data(), static_cast<int>(this->_internal_file_report().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_DllStatus.file_report");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_file_report(), target);
  }

  // optional string command_line = 2;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_command_line().data(), static_cast<int>(this->_internal_command_line().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_DllStatus.command_line");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_command_line(), target);
  }

  // optional uint32 total_files = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_total_files(), target);
  }

  // optional uint32 process_id = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(4, this->_internal_process_id(), target);
  }

  // optional int32 osversion = 5;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_osversion(), target);
  }

  // optional uint64 client_time = 6;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(6, this->_internal_client_time(), target);
  }

  // repeated .CUserMessage_DllStatus.CVDiagnostic diagnostics = 7;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_diagnostics_size()); i < n; i++) {
    const auto& repfield = this->_internal_diagnostics(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(7, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CUserMessage_DllStatus.CModule modules = 8;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_modules_size()); i < n; i++) {
    const auto& repfield = this->_internal_modules(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(8, repfield, repfield.GetCachedSize(), target, stream);
  }

  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:CUserMessage_DllStatus)
  return target;
}

size_t CUserMessage_DllStatus::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_DllStatus)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .CUserMessage_DllStatus.CVDiagnostic diagnostics = 7;
  total_size += 1UL * this->_internal_diagnostics_size();
  for (const auto& msg : this->_impl_.diagnostics_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMessage_DllStatus.CModule modules = 8;
  total_size += 1UL * this->_internal_modules_size();
  for (const auto& msg : this->_impl_.modules_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    // optional string file_report = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_file_report());
    }

    // optional string command_line = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_command_line());
    }

    // optional uint32 total_files = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_total_files());
    }

    // optional uint32 process_id = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_process_id());
    }

    // optional uint64 client_time = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_client_time());
    }

    // optional int32 osversion = 5;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_osversion());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_DllStatus::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_DllStatus::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_DllStatus::GetClassData() const { return &_class_data_; }


void CUserMessage_DllStatus::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_DllStatus*>(&to_msg);
  auto& from = static_cast<const CUserMessage_DllStatus&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_DllStatus)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.diagnostics_.MergeFrom(from._impl_.diagnostics_);
  _this->_impl_.modules_.MergeFrom(from._impl_.modules_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000003fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_file_report(from._internal_file_report());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_command_line(from._internal_command_line());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.total_files_ = from._impl_.total_files_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.process_id_ = from._impl_.process_id_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.client_time_ = from._impl_.client_time_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.osversion_ = from._impl_.osversion_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_DllStatus::CopyFrom(const CUserMessage_DllStatus& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_DllStatus)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_DllStatus::IsInitialized() const {
  return true;
}

void CUserMessage_DllStatus::InternalSwap(CUserMessage_DllStatus* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.diagnostics_.InternalSwap(&other->_impl_.diagnostics_);
  _impl_.modules_.InternalSwap(&other->_impl_.modules_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.file_report_, lhs_arena,
      &other->_impl_.file_report_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.command_line_, lhs_arena,
      &other->_impl_.command_line_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus, _impl_.osversion_)
      + sizeof(CUserMessage_DllStatus::_impl_.osversion_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_DllStatus, _impl_.total_files_)>(
          reinterpret_cast<char*>(&_impl_.total_files_),
          reinterpret_cast<char*>(&other->_impl_.total_files_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_DllStatus::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[95]);
}

// ===================================================================

class CUserMessageRequestInventory::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageRequestInventory>()._impl_._has_bits_);
  static void set_has_inventory(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_options(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
};

CUserMessageRequestInventory::CUserMessageRequestInventory(::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:CUserMessageRequestInventory)
}
CUserMessageRequestInventory::CUserMessageRequestInventory(const CUserMessageRequestInventory& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRequestInventory* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.inventory_){}
    , decltype(_impl_.offset_){}
    , decltype(_impl_.options_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.inventory_, &from._impl_.inventory_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.options_) -
    reinterpret_cast<char*>(&_impl_.inventory_)) + sizeof(_impl_.options_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestInventory)
}

inline void CUserMessageRequestInventory::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_.inventory_){0}
    , decltype(_impl_.offset_){0}
    , decltype(_impl_.options_){0}
  };
}

CUserMessageRequestInventory::~CUserMessageRequestInventory() {
  // @@protoc_insertion_point(destructor:CUserMessageRequestInventory)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageRequestInventory::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

void CUserMessageRequestInventory::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageRequestInventory::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRequestInventory)
  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_.inventory_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.options_) -
        reinterpret_cast<char*>(&_impl_.inventory_)) + sizeof(_impl_.options_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRequestInventory::_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 inventory = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_inventory(&has_bits);
          _impl_.inventory_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 offset = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_offset(&has_bits);
          _impl_.offset_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 options = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_options(&has_bits);
          _impl_.options_ = ::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* CUserMessageRequestInventory::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRequestInventory)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 inventory = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_inventory(), target);
  }

  // optional int32 offset = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_offset(), target);
  }

  // optional int32 options = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_options(), 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:CUserMessageRequestInventory)
  return target;
}

size_t CUserMessageRequestInventory::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRequestInventory)
  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 int32 inventory = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_inventory());
    }

    // optional int32 offset = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_offset());
    }

    // optional int32 options = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_options());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestInventory::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageRequestInventory::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestInventory::GetClassData() const { return &_class_data_; }


void CUserMessageRequestInventory::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRequestInventory*>(&to_msg);
  auto& from = static_cast<const CUserMessageRequestInventory&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRequestInventory)
  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_.inventory_ = from._impl_.inventory_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.offset_ = from._impl_.offset_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.options_ = from._impl_.options_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageRequestInventory::CopyFrom(const CUserMessageRequestInventory& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageRequestInventory)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageRequestInventory::IsInitialized() const {
  return true;
}

void CUserMessageRequestInventory::InternalSwap(CUserMessageRequestInventory* 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(CUserMessageRequestInventory, _impl_.options_)
      + sizeof(CUserMessageRequestInventory::_impl_.options_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageRequestInventory, _impl_.inventory_)>(
          reinterpret_cast<char*>(&_impl_.inventory_),
          reinterpret_cast<char*>(&other->_impl_.inventory_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestInventory::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[96]);
}

// ===================================================================

class CUserMessage_Inventory_Response_InventoryDetail::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_Inventory_Response_InventoryDetail>()._impl_._has_bits_);
  static void set_has_index(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_primary(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_first(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_base(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_base_name(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_base_detail(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_base_time(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_base_hash(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
};

CUserMessage_Inventory_Response_InventoryDetail::CUserMessage_Inventory_Response_InventoryDetail(::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:CUserMessage_Inventory_Response.InventoryDetail)
}
CUserMessage_Inventory_Response_InventoryDetail::CUserMessage_Inventory_Response_InventoryDetail(const CUserMessage_Inventory_Response_InventoryDetail& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_Inventory_Response_InventoryDetail* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.base_name_){}
    , decltype(_impl_.primary_){}
    , decltype(_impl_.offset_){}
    , decltype(_impl_.first_){}
    , decltype(_impl_.index_){}
    , decltype(_impl_.base_detail_){}
    , decltype(_impl_.base_){}
    , decltype(_impl_.base_time_){}
    , decltype(_impl_.base_hash_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.base_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.base_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_base_name()) {
    _this->_impl_.base_name_.Set(from._internal_base_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.primary_, &from._impl_.primary_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.base_hash_) -
    reinterpret_cast<char*>(&_impl_.primary_)) + sizeof(_impl_.base_hash_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_Inventory_Response.InventoryDetail)
}

inline void CUserMessage_Inventory_Response_InventoryDetail::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_.name_){}
    , decltype(_impl_.base_name_){}
    , decltype(_impl_.primary_){int64_t{0}}
    , decltype(_impl_.offset_){int64_t{0}}
    , decltype(_impl_.first_){int64_t{0}}
    , decltype(_impl_.index_){0}
    , decltype(_impl_.base_detail_){0}
    , decltype(_impl_.base_){int64_t{0}}
    , decltype(_impl_.base_time_){0}
    , decltype(_impl_.base_hash_){0}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.base_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.base_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_Inventory_Response_InventoryDetail::~CUserMessage_Inventory_Response_InventoryDetail() {
  // @@protoc_insertion_point(destructor:CUserMessage_Inventory_Response.InventoryDetail)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_Inventory_Response_InventoryDetail::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
  _impl_.base_name_.Destroy();
}

void CUserMessage_Inventory_Response_InventoryDetail::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_Inventory_Response_InventoryDetail::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_Inventory_Response.InventoryDetail)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.base_name_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x000000fcu) {
    ::memset(&_impl_.primary_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.base_) -
        reinterpret_cast<char*>(&_impl_.primary_)) + sizeof(_impl_.base_));
  }
  if (cached_has_bits & 0x00000300u) {
    ::memset(&_impl_.base_time_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.base_hash_) -
        reinterpret_cast<char*>(&_impl_.base_time_)) + sizeof(_impl_.base_hash_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_Inventory_Response_InventoryDetail::_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 index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_index(&has_bits);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 primary = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_primary(&has_bits);
          _impl_.primary_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 offset = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_offset(&has_bits);
          _impl_.offset_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 first = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_first(&has_bits);
          _impl_.first_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 base = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_base(&has_bits);
          _impl_.base_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string name = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_Inventory_Response.InventoryDetail.name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string base_name = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          auto str = _internal_mutable_base_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_Inventory_Response.InventoryDetail.base_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional int32 base_detail = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_base_detail(&has_bits);
          _impl_.base_detail_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 base_time = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_base_time(&has_bits);
          _impl_.base_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 base_hash = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_base_hash(&has_bits);
          _impl_.base_hash_ = ::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* CUserMessage_Inventory_Response_InventoryDetail::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_Inventory_Response.InventoryDetail)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 index = 1;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_index(), target);
  }

  // optional int64 primary = 2;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(2, this->_internal_primary(), target);
  }

  // optional int64 offset = 3;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(3, this->_internal_offset(), target);
  }

  // optional int64 first = 4;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(4, this->_internal_first(), target);
  }

  // optional int64 base = 5;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(5, this->_internal_base(), target);
  }

  // optional string name = 6;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_Inventory_Response.InventoryDetail.name");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_name(), target);
  }

  // optional string base_name = 7;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_base_name().data(), static_cast<int>(this->_internal_base_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_Inventory_Response.InventoryDetail.base_name");
    target = stream->WriteStringMaybeAliased(
        7, this->_internal_base_name(), target);
  }

  // optional int32 base_detail = 8;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(8, this->_internal_base_detail(), target);
  }

  // optional int32 base_time = 9;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(9, this->_internal_base_time(), target);
  }

  // optional int32 base_hash = 10;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(10, this->_internal_base_hash(), 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:CUserMessage_Inventory_Response.InventoryDetail)
  return target;
}

size_t CUserMessage_Inventory_Response_InventoryDetail::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_Inventory_Response.InventoryDetail)
  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 string name = 6;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional string base_name = 7;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_base_name());
    }

    // optional int64 primary = 2;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_primary());
    }

    // optional int64 offset = 3;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_offset());
    }

    // optional int64 first = 4;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_first());
    }

    // optional int32 index = 1;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_index());
    }

    // optional int32 base_detail = 8;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_base_detail());
    }

    // optional int64 base = 5;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_base());
    }

  }
  if (cached_has_bits & 0x00000300u) {
    // optional int32 base_time = 9;
    if (cached_has_bits & 0x00000100u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_base_time());
    }

    // optional int32 base_hash = 10;
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_base_hash());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_Inventory_Response_InventoryDetail::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_Inventory_Response_InventoryDetail::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_Inventory_Response_InventoryDetail::GetClassData() const { return &_class_data_; }


void CUserMessage_Inventory_Response_InventoryDetail::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_Inventory_Response_InventoryDetail*>(&to_msg);
  auto& from = static_cast<const CUserMessage_Inventory_Response_InventoryDetail&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_Inventory_Response.InventoryDetail)
  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_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_base_name(from._internal_base_name());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.primary_ = from._impl_.primary_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.offset_ = from._impl_.offset_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.first_ = from._impl_.first_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.index_ = from._impl_.index_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.base_detail_ = from._impl_.base_detail_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.base_ = from._impl_.base_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00000300u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.base_time_ = from._impl_.base_time_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.base_hash_ = from._impl_.base_hash_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_Inventory_Response_InventoryDetail::CopyFrom(const CUserMessage_Inventory_Response_InventoryDetail& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_Inventory_Response.InventoryDetail)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_Inventory_Response_InventoryDetail::IsInitialized() const {
  return true;
}

void CUserMessage_Inventory_Response_InventoryDetail::InternalSwap(CUserMessage_Inventory_Response_InventoryDetail* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.base_name_, lhs_arena,
      &other->_impl_.base_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_Inventory_Response_InventoryDetail, _impl_.base_hash_)
      + sizeof(CUserMessage_Inventory_Response_InventoryDetail::_impl_.base_hash_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_Inventory_Response_InventoryDetail, _impl_.primary_)>(
          reinterpret_cast<char*>(&_impl_.primary_),
          reinterpret_cast<char*>(&other->_impl_.primary_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_Inventory_Response_InventoryDetail::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[97]);
}

// ===================================================================

class CUserMessage_Inventory_Response::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_Inventory_Response>()._impl_._has_bits_);
  static void set_has_crc(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_item_count(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_osversion(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_perf_time(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_client_timestamp(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_platform(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_inv_type(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_build_version(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_instance(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_start_time(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
};

CUserMessage_Inventory_Response::CUserMessage_Inventory_Response(::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:CUserMessage_Inventory_Response)
}
CUserMessage_Inventory_Response::CUserMessage_Inventory_Response(const CUserMessage_Inventory_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_Inventory_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.inventories_){from._impl_.inventories_}
    , decltype(_impl_.inventories2_){from._impl_.inventories2_}
    , decltype(_impl_.inventories3_){from._impl_.inventories3_}
    , decltype(_impl_.crc_){}
    , decltype(_impl_.item_count_){}
    , decltype(_impl_.osversion_){}
    , decltype(_impl_.perf_time_){}
    , decltype(_impl_.client_timestamp_){}
    , decltype(_impl_.platform_){}
    , decltype(_impl_.inv_type_){}
    , decltype(_impl_.build_version_){}
    , decltype(_impl_.start_time_){}
    , decltype(_impl_.instance_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.crc_, &from._impl_.crc_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.instance_) -
    reinterpret_cast<char*>(&_impl_.crc_)) + sizeof(_impl_.instance_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_Inventory_Response)
}

inline void CUserMessage_Inventory_Response::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_.inventories_){arena}
    , decltype(_impl_.inventories2_){arena}
    , decltype(_impl_.inventories3_){arena}
    , decltype(_impl_.crc_){0u}
    , decltype(_impl_.item_count_){0}
    , decltype(_impl_.osversion_){0}
    , decltype(_impl_.perf_time_){0}
    , decltype(_impl_.client_timestamp_){0}
    , decltype(_impl_.platform_){0}
    , decltype(_impl_.inv_type_){0}
    , decltype(_impl_.build_version_){0}
    , decltype(_impl_.start_time_){int64_t{0}}
    , decltype(_impl_.instance_){0}
  };
}

CUserMessage_Inventory_Response::~CUserMessage_Inventory_Response() {
  // @@protoc_insertion_point(destructor:CUserMessage_Inventory_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_Inventory_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.inventories_.~RepeatedPtrField();
  _impl_.inventories2_.~RepeatedPtrField();
  _impl_.inventories3_.~RepeatedPtrField();
}

void CUserMessage_Inventory_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_Inventory_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_Inventory_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.inventories_.Clear();
  _impl_.inventories2_.Clear();
  _impl_.inventories3_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    ::memset(&_impl_.crc_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.build_version_) -
        reinterpret_cast<char*>(&_impl_.crc_)) + sizeof(_impl_.build_version_));
  }
  if (cached_has_bits & 0x00000300u) {
    ::memset(&_impl_.start_time_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.instance_) -
        reinterpret_cast<char*>(&_impl_.start_time_)) + sizeof(_impl_.instance_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_Inventory_Response::_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 crc = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_crc(&has_bits);
          _impl_.crc_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional int32 item_count = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_item_count(&has_bits);
          _impl_.item_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 osversion = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_osversion(&has_bits);
          _impl_.osversion_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 perf_time = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_perf_time(&has_bits);
          _impl_.perf_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 client_timestamp = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_client_timestamp(&has_bits);
          _impl_.client_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 platform = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_platform(&has_bits);
          _impl_.platform_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_inventories(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories2 = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_inventories2(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional int32 inv_type = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_inv_type(&has_bits);
          _impl_.inv_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 build_version = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) {
          _Internal::set_has_build_version(&has_bits);
          _impl_.build_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 instance = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
          _Internal::set_has_instance(&has_bits);
          _impl_.instance_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories3 = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 114)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_inventories3(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<114>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional int64 start_time = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 120)) {
          _Internal::set_has_start_time(&has_bits);
          _impl_.start_time_ = ::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* CUserMessage_Inventory_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_Inventory_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional fixed32 crc = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(1, this->_internal_crc(), target);
  }

  // optional int32 item_count = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_item_count(), target);
  }

  // optional int32 osversion = 5;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_osversion(), target);
  }

  // optional int32 perf_time = 6;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_perf_time(), target);
  }

  // optional int32 client_timestamp = 7;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(7, this->_internal_client_timestamp(), target);
  }

  // optional int32 platform = 8;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(8, this->_internal_platform(), target);
  }

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories = 9;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_inventories_size()); i < n; i++) {
    const auto& repfield = this->_internal_inventories(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(9, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories2 = 10;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_inventories2_size()); i < n; i++) {
    const auto& repfield = this->_internal_inventories2(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(10, repfield, repfield.GetCachedSize(), target, stream);
  }

  // optional int32 inv_type = 11;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(11, this->_internal_inv_type(), target);
  }

  // optional int32 build_version = 12;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(12, this->_internal_build_version(), target);
  }

  // optional int32 instance = 13;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(13, this->_internal_instance(), target);
  }

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories3 = 14;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_inventories3_size()); i < n; i++) {
    const auto& repfield = this->_internal_inventories3(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(14, repfield, repfield.GetCachedSize(), target, stream);
  }

  // optional int64 start_time = 15;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(15, this->_internal_start_time(), 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:CUserMessage_Inventory_Response)
  return target;
}

size_t CUserMessage_Inventory_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_Inventory_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories = 9;
  total_size += 1UL * this->_internal_inventories_size();
  for (const auto& msg : this->_impl_.inventories_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories2 = 10;
  total_size += 1UL * this->_internal_inventories2_size();
  for (const auto& msg : this->_impl_.inventories2_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .CUserMessage_Inventory_Response.InventoryDetail inventories3 = 14;
  total_size += 1UL * this->_internal_inventories3_size();
  for (const auto& msg : this->_impl_.inventories3_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional fixed32 crc = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional int32 item_count = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_item_count());
    }

    // optional int32 osversion = 5;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_osversion());
    }

    // optional int32 perf_time = 6;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_perf_time());
    }

    // optional int32 client_timestamp = 7;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_client_timestamp());
    }

    // optional int32 platform = 8;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_platform());
    }

    // optional int32 inv_type = 11;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_inv_type());
    }

    // optional int32 build_version = 12;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_build_version());
    }

  }
  if (cached_has_bits & 0x00000300u) {
    // optional int64 start_time = 15;
    if (cached_has_bits & 0x00000100u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_start_time());
    }

    // optional int32 instance = 13;
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_instance());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_Inventory_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_Inventory_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_Inventory_Response::GetClassData() const { return &_class_data_; }


void CUserMessage_Inventory_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_Inventory_Response*>(&to_msg);
  auto& from = static_cast<const CUserMessage_Inventory_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_Inventory_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.inventories_.MergeFrom(from._impl_.inventories_);
  _this->_impl_.inventories2_.MergeFrom(from._impl_.inventories2_);
  _this->_impl_.inventories3_.MergeFrom(from._impl_.inventories3_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.crc_ = from._impl_.crc_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.item_count_ = from._impl_.item_count_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.osversion_ = from._impl_.osversion_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.perf_time_ = from._impl_.perf_time_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.client_timestamp_ = from._impl_.client_timestamp_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.platform_ = from._impl_.platform_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.inv_type_ = from._impl_.inv_type_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.build_version_ = from._impl_.build_version_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00000300u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.start_time_ = from._impl_.start_time_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.instance_ = from._impl_.instance_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_Inventory_Response::CopyFrom(const CUserMessage_Inventory_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_Inventory_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_Inventory_Response::IsInitialized() const {
  return true;
}

void CUserMessage_Inventory_Response::InternalSwap(CUserMessage_Inventory_Response* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.inventories_.InternalSwap(&other->_impl_.inventories_);
  _impl_.inventories2_.InternalSwap(&other->_impl_.inventories2_);
  _impl_.inventories3_.InternalSwap(&other->_impl_.inventories3_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_Inventory_Response, _impl_.instance_)
      + sizeof(CUserMessage_Inventory_Response::_impl_.instance_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_Inventory_Response, _impl_.crc_)>(
          reinterpret_cast<char*>(&_impl_.crc_),
          reinterpret_cast<char*>(&other->_impl_.crc_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_Inventory_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[98]);
}

// ===================================================================

class CUserMessageRequestDiagnostic_Diagnostic::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessageRequestDiagnostic_Diagnostic>()._impl_._has_bits_);
  static void set_has_index(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_param(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_length(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_type(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_base(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_range(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_extent(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_detail(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_alias(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_vardetail(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_context(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
};

CUserMessageRequestDiagnostic_Diagnostic::CUserMessageRequestDiagnostic_Diagnostic(::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:CUserMessageRequestDiagnostic.Diagnostic)
}
CUserMessageRequestDiagnostic_Diagnostic::CUserMessageRequestDiagnostic_Diagnostic(const CUserMessageRequestDiagnostic_Diagnostic& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRequestDiagnostic_Diagnostic* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.name_){}
    , decltype(_impl_.alias_){}
    , decltype(_impl_.vardetail_){}
    , decltype(_impl_.offset_){}
    , decltype(_impl_.index_){}
    , decltype(_impl_.param_){}
    , decltype(_impl_.length_){}
    , decltype(_impl_.type_){}
    , decltype(_impl_.base_){}
    , decltype(_impl_.range_){}
    , decltype(_impl_.extent_){}
    , decltype(_impl_.detail_){}
    , decltype(_impl_.context_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.alias_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.alias_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_alias()) {
    _this->_impl_.alias_.Set(from._internal_alias(), 
      _this->GetArenaForAllocation());
  }
  _impl_.vardetail_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.vardetail_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_vardetail()) {
    _this->_impl_.vardetail_.Set(from._internal_vardetail(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.offset_, &from._impl_.offset_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.context_) -
    reinterpret_cast<char*>(&_impl_.offset_)) + sizeof(_impl_.context_));
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestDiagnostic.Diagnostic)
}

inline void CUserMessageRequestDiagnostic_Diagnostic::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_.name_){}
    , decltype(_impl_.alias_){}
    , decltype(_impl_.vardetail_){}
    , decltype(_impl_.offset_){int64_t{0}}
    , decltype(_impl_.index_){0}
    , decltype(_impl_.param_){0}
    , decltype(_impl_.length_){0}
    , decltype(_impl_.type_){0}
    , decltype(_impl_.base_){int64_t{0}}
    , decltype(_impl_.range_){int64_t{0}}
    , decltype(_impl_.extent_){int64_t{0}}
    , decltype(_impl_.detail_){int64_t{0}}
    , decltype(_impl_.context_){0}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.alias_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.alias_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.vardetail_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.vardetail_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessageRequestDiagnostic_Diagnostic::~CUserMessageRequestDiagnostic_Diagnostic() {
  // @@protoc_insertion_point(destructor:CUserMessageRequestDiagnostic.Diagnostic)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageRequestDiagnostic_Diagnostic::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
  _impl_.alias_.Destroy();
  _impl_.vardetail_.Destroy();
}

void CUserMessageRequestDiagnostic_Diagnostic::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageRequestDiagnostic_Diagnostic::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRequestDiagnostic.Diagnostic)
  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) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.alias_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.vardetail_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x000000f8u) {
    ::memset(&_impl_.offset_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.type_) -
        reinterpret_cast<char*>(&_impl_.offset_)) + sizeof(_impl_.type_));
  }
  if (cached_has_bits & 0x00001f00u) {
    ::memset(&_impl_.base_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.context_) -
        reinterpret_cast<char*>(&_impl_.base_)) + sizeof(_impl_.context_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRequestDiagnostic_Diagnostic::_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 index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_index(&has_bits);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 offset = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_offset(&has_bits);
          _impl_.offset_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 param = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_param(&has_bits);
          _impl_.param_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 length = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_length(&has_bits);
          _impl_.length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 type = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_type(&has_bits);
          _impl_.type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 base = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_base(&has_bits);
          _impl_.base_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 range = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_range(&has_bits);
          _impl_.range_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 extent = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_extent(&has_bits);
          _impl_.extent_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 detail = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          _Internal::set_has_detail(&has_bits);
          _impl_.detail_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string name = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageRequestDiagnostic.Diagnostic.name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string alias = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          auto str = _internal_mutable_alias();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessageRequestDiagnostic.Diagnostic.alias");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bytes vardetail = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          auto str = _internal_mutable_vardetail();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 context = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
          _Internal::set_has_context(&has_bits);
          _impl_.context_ = ::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* CUserMessageRequestDiagnostic_Diagnostic::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRequestDiagnostic.Diagnostic)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 index = 1;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_index(), target);
  }

  // optional int64 offset = 2;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(2, this->_internal_offset(), target);
  }

  // optional int32 param = 3;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_param(), target);
  }

  // optional int32 length = 4;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_length(), target);
  }

  // optional int32 type = 5;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_type(), target);
  }

  // optional int64 base = 6;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(6, this->_internal_base(), target);
  }

  // optional int64 range = 7;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(7, this->_internal_range(), target);
  }

  // optional int64 extent = 8;
  if (cached_has_bits & 0x00000400u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(8, this->_internal_extent(), target);
  }

  // optional int64 detail = 9;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(9, this->_internal_detail(), target);
  }

  // optional string name = 10;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageRequestDiagnostic.Diagnostic.name");
    target = stream->WriteStringMaybeAliased(
        10, this->_internal_name(), target);
  }

  // optional string alias = 11;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_alias().data(), static_cast<int>(this->_internal_alias().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessageRequestDiagnostic.Diagnostic.alias");
    target = stream->WriteStringMaybeAliased(
        11, this->_internal_alias(), target);
  }

  // optional bytes vardetail = 12;
  if (cached_has_bits & 0x00000004u) {
    target = stream->WriteBytesMaybeAliased(
        12, this->_internal_vardetail(), target);
  }

  // optional int32 context = 13;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(13, this->_internal_context(), 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:CUserMessageRequestDiagnostic.Diagnostic)
  return target;
}

size_t CUserMessageRequestDiagnostic_Diagnostic::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRequestDiagnostic.Diagnostic)
  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 string name = 10;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional string alias = 11;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_alias());
    }

    // optional bytes vardetail = 12;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_vardetail());
    }

    // optional int64 offset = 2;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_offset());
    }

    // optional int32 index = 1;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_index());
    }

    // optional int32 param = 3;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_param());
    }

    // optional int32 length = 4;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_length());
    }

    // optional int32 type = 5;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_type());
    }

  }
  if (cached_has_bits & 0x00001f00u) {
    // optional int64 base = 6;
    if (cached_has_bits & 0x00000100u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_base());
    }

    // optional int64 range = 7;
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_range());
    }

    // optional int64 extent = 8;
    if (cached_has_bits & 0x00000400u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_extent());
    }

    // optional int64 detail = 9;
    if (cached_has_bits & 0x00000800u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_detail());
    }

    // optional int32 context = 13;
    if (cached_has_bits & 0x00001000u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_context());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestDiagnostic_Diagnostic::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageRequestDiagnostic_Diagnostic::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestDiagnostic_Diagnostic::GetClassData() const { return &_class_data_; }


void CUserMessageRequestDiagnostic_Diagnostic::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRequestDiagnostic_Diagnostic*>(&to_msg);
  auto& from = static_cast<const CUserMessageRequestDiagnostic_Diagnostic&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRequestDiagnostic.Diagnostic)
  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_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_alias(from._internal_alias());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_vardetail(from._internal_vardetail());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.offset_ = from._impl_.offset_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.index_ = from._impl_.index_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.param_ = from._impl_.param_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.length_ = from._impl_.length_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.type_ = from._impl_.type_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00001f00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.base_ = from._impl_.base_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.range_ = from._impl_.range_;
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_impl_.extent_ = from._impl_.extent_;
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.detail_ = from._impl_.detail_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.context_ = from._impl_.context_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageRequestDiagnostic_Diagnostic::CopyFrom(const CUserMessageRequestDiagnostic_Diagnostic& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageRequestDiagnostic.Diagnostic)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageRequestDiagnostic_Diagnostic::IsInitialized() const {
  return true;
}

void CUserMessageRequestDiagnostic_Diagnostic::InternalSwap(CUserMessageRequestDiagnostic_Diagnostic* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.alias_, lhs_arena,
      &other->_impl_.alias_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.vardetail_, lhs_arena,
      &other->_impl_.vardetail_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessageRequestDiagnostic_Diagnostic, _impl_.context_)
      + sizeof(CUserMessageRequestDiagnostic_Diagnostic::_impl_.context_)
      - PROTOBUF_FIELD_OFFSET(CUserMessageRequestDiagnostic_Diagnostic, _impl_.offset_)>(
          reinterpret_cast<char*>(&_impl_.offset_),
          reinterpret_cast<char*>(&other->_impl_.offset_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestDiagnostic_Diagnostic::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[99]);
}

// ===================================================================

class CUserMessageRequestDiagnostic::_Internal {
 public:
};

CUserMessageRequestDiagnostic::CUserMessageRequestDiagnostic(::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:CUserMessageRequestDiagnostic)
}
CUserMessageRequestDiagnostic::CUserMessageRequestDiagnostic(const CUserMessageRequestDiagnostic& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessageRequestDiagnostic* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.diagnostics_){from._impl_.diagnostics_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CUserMessageRequestDiagnostic)
}

inline void CUserMessageRequestDiagnostic::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.diagnostics_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

CUserMessageRequestDiagnostic::~CUserMessageRequestDiagnostic() {
  // @@protoc_insertion_point(destructor:CUserMessageRequestDiagnostic)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessageRequestDiagnostic::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.diagnostics_.~RepeatedPtrField();
}

void CUserMessageRequestDiagnostic::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessageRequestDiagnostic::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessageRequestDiagnostic)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.diagnostics_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessageRequestDiagnostic::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated .CUserMessageRequestDiagnostic.Diagnostic diagnostics = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_diagnostics(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(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:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CUserMessageRequestDiagnostic::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessageRequestDiagnostic)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .CUserMessageRequestDiagnostic.Diagnostic diagnostics = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_diagnostics_size()); i < n; i++) {
    const auto& repfield = this->_internal_diagnostics(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

  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:CUserMessageRequestDiagnostic)
  return target;
}

size_t CUserMessageRequestDiagnostic::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessageRequestDiagnostic)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .CUserMessageRequestDiagnostic.Diagnostic diagnostics = 1;
  total_size += 1UL * this->_internal_diagnostics_size();
  for (const auto& msg : this->_impl_.diagnostics_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessageRequestDiagnostic::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessageRequestDiagnostic::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessageRequestDiagnostic::GetClassData() const { return &_class_data_; }


void CUserMessageRequestDiagnostic::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessageRequestDiagnostic*>(&to_msg);
  auto& from = static_cast<const CUserMessageRequestDiagnostic&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessageRequestDiagnostic)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.diagnostics_.MergeFrom(from._impl_.diagnostics_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessageRequestDiagnostic::CopyFrom(const CUserMessageRequestDiagnostic& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessageRequestDiagnostic)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessageRequestDiagnostic::IsInitialized() const {
  return true;
}

void CUserMessageRequestDiagnostic::InternalSwap(CUserMessageRequestDiagnostic* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.diagnostics_.InternalSwap(&other->_impl_.diagnostics_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessageRequestDiagnostic::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[100]);
}

// ===================================================================

class CUserMessage_Diagnostic_Response_Diagnostic::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_Diagnostic_Response_Diagnostic>()._impl_._has_bits_);
  static void set_has_index(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_offset(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_param(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_length(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_detail(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_base(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_range(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_type(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static void set_has_name(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_alias(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_backup(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_context(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_control(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static void set_has_augment(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_placebo(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
};

CUserMessage_Diagnostic_Response_Diagnostic::CUserMessage_Diagnostic_Response_Diagnostic(::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:CUserMessage_Diagnostic_Response.Diagnostic)
}
CUserMessage_Diagnostic_Response_Diagnostic::CUserMessage_Diagnostic_Response_Diagnostic(const CUserMessage_Diagnostic_Response_Diagnostic& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_Diagnostic_Response_Diagnostic* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.detail_){}
    , decltype(_impl_.name_){}
    , decltype(_impl_.alias_){}
    , decltype(_impl_.backup_){}
    , decltype(_impl_.offset_){}
    , decltype(_impl_.index_){}
    , decltype(_impl_.param_){}
    , decltype(_impl_.base_){}
    , decltype(_impl_.length_){}
    , decltype(_impl_.type_){}
    , decltype(_impl_.range_){}
    , decltype(_impl_.control_){}
    , decltype(_impl_.augment_){}
    , decltype(_impl_.placebo_){}
    , decltype(_impl_.context_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.detail_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.detail_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_detail()) {
    _this->_impl_.detail_.Set(from._internal_detail(), 
      _this->GetArenaForAllocation());
  }
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_name()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.alias_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.alias_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_alias()) {
    _this->_impl_.alias_.Set(from._internal_alias(), 
      _this->GetArenaForAllocation());
  }
  _impl_.backup_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.backup_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_backup()) {
    _this->_impl_.backup_.Set(from._internal_backup(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.offset_, &from._impl_.offset_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.context_) -
    reinterpret_cast<char*>(&_impl_.offset_)) + sizeof(_impl_.context_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_Diagnostic_Response.Diagnostic)
}

inline void CUserMessage_Diagnostic_Response_Diagnostic::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_.detail_){}
    , decltype(_impl_.name_){}
    , decltype(_impl_.alias_){}
    , decltype(_impl_.backup_){}
    , decltype(_impl_.offset_){int64_t{0}}
    , decltype(_impl_.index_){0}
    , decltype(_impl_.param_){0}
    , decltype(_impl_.base_){int64_t{0}}
    , decltype(_impl_.length_){0}
    , decltype(_impl_.type_){0}
    , decltype(_impl_.range_){int64_t{0}}
    , decltype(_impl_.control_){int64_t{0}}
    , decltype(_impl_.augment_){int64_t{0}}
    , decltype(_impl_.placebo_){int64_t{0}}
    , decltype(_impl_.context_){0}
  };
  _impl_.detail_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.detail_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.alias_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.alias_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.backup_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.backup_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_Diagnostic_Response_Diagnostic::~CUserMessage_Diagnostic_Response_Diagnostic() {
  // @@protoc_insertion_point(destructor:CUserMessage_Diagnostic_Response.Diagnostic)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_Diagnostic_Response_Diagnostic::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.detail_.Destroy();
  _impl_.name_.Destroy();
  _impl_.alias_.Destroy();
  _impl_.backup_.Destroy();
}

void CUserMessage_Diagnostic_Response_Diagnostic::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_Diagnostic_Response_Diagnostic::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_Diagnostic_Response.Diagnostic)
  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) {
      _impl_.detail_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.alias_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.backup_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x000000f0u) {
    ::memset(&_impl_.offset_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.base_) -
        reinterpret_cast<char*>(&_impl_.offset_)) + sizeof(_impl_.base_));
  }
  if (cached_has_bits & 0x00007f00u) {
    ::memset(&_impl_.length_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.context_) -
        reinterpret_cast<char*>(&_impl_.length_)) + sizeof(_impl_.context_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_Diagnostic_Response_Diagnostic::_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 index = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_index(&has_bits);
          _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 offset = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_offset(&has_bits);
          _impl_.offset_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 param = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_param(&has_bits);
          _impl_.param_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 length = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_length(&has_bits);
          _impl_.length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bytes detail = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_detail();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 base = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_base(&has_bits);
          _impl_.base_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 range = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_range(&has_bits);
          _impl_.range_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } 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;
      // optional string name = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_Diagnostic_Response.Diagnostic.name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string alias = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          auto str = _internal_mutable_alias();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_Diagnostic_Response.Diagnostic.alias");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional bytes backup = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          auto str = _internal_mutable_backup();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 context = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
          _Internal::set_has_context(&has_bits);
          _impl_.context_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 control = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 112)) {
          _Internal::set_has_control(&has_bits);
          _impl_.control_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 augment = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 120)) {
          _Internal::set_has_augment(&has_bits);
          _impl_.augment_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 placebo = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 128)) {
          _Internal::set_has_placebo(&has_bits);
          _impl_.placebo_ = ::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* CUserMessage_Diagnostic_Response_Diagnostic::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_Diagnostic_Response.Diagnostic)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 index = 1;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_index(), target);
  }

  // optional int64 offset = 2;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(2, this->_internal_offset(), target);
  }

  // optional int32 param = 3;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_param(), target);
  }

  // optional int32 length = 4;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(4, this->_internal_length(), target);
  }

  // optional bytes detail = 5;
  if (cached_has_bits & 0x00000001u) {
    target = stream->WriteBytesMaybeAliased(
        5, this->_internal_detail(), target);
  }

  // optional int64 base = 6;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(6, this->_internal_base(), target);
  }

  // optional int64 range = 7;
  if (cached_has_bits & 0x00000400u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(7, this->_internal_range(), target);
  }

  // optional int32 type = 8;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(8, this->_internal_type(), target);
  }

  // optional string name = 10;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_Diagnostic_Response.Diagnostic.name");
    target = stream->WriteStringMaybeAliased(
        10, this->_internal_name(), target);
  }

  // optional string alias = 11;
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_alias().data(), static_cast<int>(this->_internal_alias().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_Diagnostic_Response.Diagnostic.alias");
    target = stream->WriteStringMaybeAliased(
        11, this->_internal_alias(), target);
  }

  // optional bytes backup = 12;
  if (cached_has_bits & 0x00000008u) {
    target = stream->WriteBytesMaybeAliased(
        12, this->_internal_backup(), target);
  }

  // optional int32 context = 13;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(13, this->_internal_context(), target);
  }

  // optional int64 control = 14;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(14, this->_internal_control(), target);
  }

  // optional int64 augment = 15;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(15, this->_internal_augment(), target);
  }

  // optional int64 placebo = 16;
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(16, this->_internal_placebo(), 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:CUserMessage_Diagnostic_Response.Diagnostic)
  return target;
}

size_t CUserMessage_Diagnostic_Response_Diagnostic::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_Diagnostic_Response.Diagnostic)
  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 bytes detail = 5;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_detail());
    }

    // optional string name = 10;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_name());
    }

    // optional string alias = 11;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_alias());
    }

    // optional bytes backup = 12;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_backup());
    }

    // optional int64 offset = 2;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_offset());
    }

    // optional int32 index = 1;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_index());
    }

    // optional int32 param = 3;
    if (cached_has_bits & 0x00000040u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_param());
    }

    // optional int64 base = 6;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_base());
    }

  }
  if (cached_has_bits & 0x00007f00u) {
    // optional int32 length = 4;
    if (cached_has_bits & 0x00000100u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_length());
    }

    // optional int32 type = 8;
    if (cached_has_bits & 0x00000200u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_type());
    }

    // optional int64 range = 7;
    if (cached_has_bits & 0x00000400u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_range());
    }

    // optional int64 control = 14;
    if (cached_has_bits & 0x00000800u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_control());
    }

    // optional int64 augment = 15;
    if (cached_has_bits & 0x00001000u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_augment());
    }

    // optional int64 placebo = 16;
    if (cached_has_bits & 0x00002000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::Int64Size(
          this->_internal_placebo());
    }

    // optional int32 context = 13;
    if (cached_has_bits & 0x00004000u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_context());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_Diagnostic_Response_Diagnostic::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_Diagnostic_Response_Diagnostic::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_Diagnostic_Response_Diagnostic::GetClassData() const { return &_class_data_; }


void CUserMessage_Diagnostic_Response_Diagnostic::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_Diagnostic_Response_Diagnostic*>(&to_msg);
  auto& from = static_cast<const CUserMessage_Diagnostic_Response_Diagnostic&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_Diagnostic_Response.Diagnostic)
  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_set_detail(from._internal_detail());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_name(from._internal_name());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_alias(from._internal_alias());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_backup(from._internal_backup());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.offset_ = from._impl_.offset_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.index_ = from._impl_.index_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.param_ = from._impl_.param_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.base_ = from._impl_.base_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00007f00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_impl_.length_ = from._impl_.length_;
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_impl_.type_ = from._impl_.type_;
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_impl_.range_ = from._impl_.range_;
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_impl_.control_ = from._impl_.control_;
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_impl_.augment_ = from._impl_.augment_;
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.placebo_ = from._impl_.placebo_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.context_ = from._impl_.context_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_Diagnostic_Response_Diagnostic::CopyFrom(const CUserMessage_Diagnostic_Response_Diagnostic& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_Diagnostic_Response.Diagnostic)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_Diagnostic_Response_Diagnostic::IsInitialized() const {
  return true;
}

void CUserMessage_Diagnostic_Response_Diagnostic::InternalSwap(CUserMessage_Diagnostic_Response_Diagnostic* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.detail_, lhs_arena,
      &other->_impl_.detail_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.alias_, lhs_arena,
      &other->_impl_.alias_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.backup_, lhs_arena,
      &other->_impl_.backup_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_Diagnostic_Response_Diagnostic, _impl_.context_)
      + sizeof(CUserMessage_Diagnostic_Response_Diagnostic::_impl_.context_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_Diagnostic_Response_Diagnostic, _impl_.offset_)>(
          reinterpret_cast<char*>(&_impl_.offset_),
          reinterpret_cast<char*>(&other->_impl_.offset_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_Diagnostic_Response_Diagnostic::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[101]);
}

// ===================================================================

class CUserMessage_Diagnostic_Response::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_Diagnostic_Response>()._impl_._has_bits_);
  static void set_has_build_version(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_instance(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_start_time(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_osversion(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_platform(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

CUserMessage_Diagnostic_Response::CUserMessage_Diagnostic_Response(::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:CUserMessage_Diagnostic_Response)
}
CUserMessage_Diagnostic_Response::CUserMessage_Diagnostic_Response(const CUserMessage_Diagnostic_Response& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_Diagnostic_Response* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.diagnostics_){from._impl_.diagnostics_}
    , decltype(_impl_.build_version_){}
    , decltype(_impl_.instance_){}
    , decltype(_impl_.start_time_){}
    , decltype(_impl_.osversion_){}
    , decltype(_impl_.platform_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.build_version_, &from._impl_.build_version_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.platform_) -
    reinterpret_cast<char*>(&_impl_.build_version_)) + sizeof(_impl_.platform_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_Diagnostic_Response)
}

inline void CUserMessage_Diagnostic_Response::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_.diagnostics_){arena}
    , decltype(_impl_.build_version_){0}
    , decltype(_impl_.instance_){0}
    , decltype(_impl_.start_time_){int64_t{0}}
    , decltype(_impl_.osversion_){0}
    , decltype(_impl_.platform_){0}
  };
}

CUserMessage_Diagnostic_Response::~CUserMessage_Diagnostic_Response() {
  // @@protoc_insertion_point(destructor:CUserMessage_Diagnostic_Response)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_Diagnostic_Response::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.diagnostics_.~RepeatedPtrField();
}

void CUserMessage_Diagnostic_Response::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_Diagnostic_Response::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_Diagnostic_Response)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.diagnostics_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    ::memset(&_impl_.build_version_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.platform_) -
        reinterpret_cast<char*>(&_impl_.build_version_)) + sizeof(_impl_.platform_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_Diagnostic_Response::_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) {
      // repeated .CUserMessage_Diagnostic_Response.Diagnostic diagnostics = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_diagnostics(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      // optional int32 build_version = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_build_version(&has_bits);
          _impl_.build_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 instance = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_instance(&has_bits);
          _impl_.instance_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 start_time = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_start_time(&has_bits);
          _impl_.start_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 osversion = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _Internal::set_has_osversion(&has_bits);
          _impl_.osversion_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 platform = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_platform(&has_bits);
          _impl_.platform_ = ::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* CUserMessage_Diagnostic_Response::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_Diagnostic_Response)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .CUserMessage_Diagnostic_Response.Diagnostic diagnostics = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_diagnostics_size()); i < n; i++) {
    const auto& repfield = this->_internal_diagnostics(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 build_version = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_build_version(), target);
  }

  // optional int32 instance = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(3, this->_internal_instance(), target);
  }

  // optional int64 start_time = 4;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(4, this->_internal_start_time(), target);
  }

  // optional int32 osversion = 5;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(5, this->_internal_osversion(), target);
  }

  // optional int32 platform = 6;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_platform(), 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:CUserMessage_Diagnostic_Response)
  return target;
}

size_t CUserMessage_Diagnostic_Response::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_Diagnostic_Response)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .CUserMessage_Diagnostic_Response.Diagnostic diagnostics = 1;
  total_size += 1UL * this->_internal_diagnostics_size();
  for (const auto& msg : this->_impl_.diagnostics_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional int32 build_version = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_build_version());
    }

    // optional int32 instance = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_instance());
    }

    // optional int64 start_time = 4;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_start_time());
    }

    // optional int32 osversion = 5;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_osversion());
    }

    // optional int32 platform = 6;
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_platform());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_Diagnostic_Response::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_Diagnostic_Response::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_Diagnostic_Response::GetClassData() const { return &_class_data_; }


void CUserMessage_Diagnostic_Response::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_Diagnostic_Response*>(&to_msg);
  auto& from = static_cast<const CUserMessage_Diagnostic_Response&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_Diagnostic_Response)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.diagnostics_.MergeFrom(from._impl_.diagnostics_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.build_version_ = from._impl_.build_version_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.instance_ = from._impl_.instance_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.start_time_ = from._impl_.start_time_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.osversion_ = from._impl_.osversion_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.platform_ = from._impl_.platform_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_Diagnostic_Response::CopyFrom(const CUserMessage_Diagnostic_Response& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_Diagnostic_Response)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_Diagnostic_Response::IsInitialized() const {
  return true;
}

void CUserMessage_Diagnostic_Response::InternalSwap(CUserMessage_Diagnostic_Response* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.diagnostics_.InternalSwap(&other->_impl_.diagnostics_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_Diagnostic_Response, _impl_.platform_)
      + sizeof(CUserMessage_Diagnostic_Response::_impl_.platform_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_Diagnostic_Response, _impl_.build_version_)>(
          reinterpret_cast<char*>(&_impl_.build_version_),
          reinterpret_cast<char*>(&other->_impl_.build_version_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_Diagnostic_Response::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[102]);
}

// ===================================================================

class CUserMessage_ExtraUserData::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_ExtraUserData>()._impl_._has_bits_);
  static void set_has_item(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_value1(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_value2(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
};

CUserMessage_ExtraUserData::CUserMessage_ExtraUserData(::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:CUserMessage_ExtraUserData)
}
CUserMessage_ExtraUserData::CUserMessage_ExtraUserData(const CUserMessage_ExtraUserData& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_ExtraUserData* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.detail1_){from._impl_.detail1_}
    , decltype(_impl_.detail2_){from._impl_.detail2_}
    , decltype(_impl_.value1_){}
    , decltype(_impl_.value2_){}
    , decltype(_impl_.item_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&_impl_.value1_, &from._impl_.value1_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.item_) -
    reinterpret_cast<char*>(&_impl_.value1_)) + sizeof(_impl_.item_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_ExtraUserData)
}

inline void CUserMessage_ExtraUserData::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_.detail1_){arena}
    , decltype(_impl_.detail2_){arena}
    , decltype(_impl_.value1_){int64_t{0}}
    , decltype(_impl_.value2_){int64_t{0}}
    , decltype(_impl_.item_){0}
  };
}

CUserMessage_ExtraUserData::~CUserMessage_ExtraUserData() {
  // @@protoc_insertion_point(destructor:CUserMessage_ExtraUserData)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_ExtraUserData::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.detail1_.~RepeatedPtrField();
  _impl_.detail2_.~RepeatedPtrField();
}

void CUserMessage_ExtraUserData::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_ExtraUserData::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_ExtraUserData)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.detail1_.Clear();
  _impl_.detail2_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    ::memset(&_impl_.value1_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.item_) -
        reinterpret_cast<char*>(&_impl_.value1_)) + sizeof(_impl_.item_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_ExtraUserData::_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 item = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_item(&has_bits);
          _impl_.item_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 value1 = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_value1(&has_bits);
          _impl_.value1_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int64 value2 = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _Internal::set_has_value2(&has_bits);
          _impl_.value2_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated bytes detail1 = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_detail1();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated bytes detail2 = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_detail2();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(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* CUserMessage_ExtraUserData::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_ExtraUserData)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 item = 1;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_item(), target);
  }

  // optional int64 value1 = 2;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(2, this->_internal_value1(), target);
  }

  // optional int64 value2 = 3;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(3, this->_internal_value2(), target);
  }

  // repeated bytes detail1 = 4;
  for (int i = 0, n = this->_internal_detail1_size(); i < n; i++) {
    const auto& s = this->_internal_detail1(i);
    target = stream->WriteBytes(4, s, target);
  }

  // repeated bytes detail2 = 5;
  for (int i = 0, n = this->_internal_detail2_size(); i < n; i++) {
    const auto& s = this->_internal_detail2(i);
    target = stream->WriteBytes(5, s, 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:CUserMessage_ExtraUserData)
  return target;
}

size_t CUserMessage_ExtraUserData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_ExtraUserData)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated bytes detail1 = 4;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.detail1_.size());
  for (int i = 0, n = _impl_.detail1_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
      _impl_.detail1_.Get(i));
  }

  // repeated bytes detail2 = 5;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.detail2_.size());
  for (int i = 0, n = _impl_.detail2_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
      _impl_.detail2_.Get(i));
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    // optional int64 value1 = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_value1());
    }

    // optional int64 value2 = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_value2());
    }

    // optional int32 item = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_item());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_ExtraUserData::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_ExtraUserData::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_ExtraUserData::GetClassData() const { return &_class_data_; }


void CUserMessage_ExtraUserData::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_ExtraUserData*>(&to_msg);
  auto& from = static_cast<const CUserMessage_ExtraUserData&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_ExtraUserData)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.detail1_.MergeFrom(from._impl_.detail1_);
  _this->_impl_.detail2_.MergeFrom(from._impl_.detail2_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_impl_.value1_ = from._impl_.value1_;
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.value2_ = from._impl_.value2_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.item_ = from._impl_.item_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_ExtraUserData::CopyFrom(const CUserMessage_ExtraUserData& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_ExtraUserData)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_ExtraUserData::IsInitialized() const {
  return true;
}

void CUserMessage_ExtraUserData::InternalSwap(CUserMessage_ExtraUserData* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.detail1_.InternalSwap(&other->_impl_.detail1_);
  _impl_.detail2_.InternalSwap(&other->_impl_.detail2_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_ExtraUserData, _impl_.item_)
      + sizeof(CUserMessage_ExtraUserData::_impl_.item_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_ExtraUserData, _impl_.value1_)>(
          reinterpret_cast<char*>(&_impl_.value1_),
          reinterpret_cast<char*>(&other->_impl_.value1_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_ExtraUserData::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[103]);
}

// ===================================================================

class CUserMessage_NotifyResponseFound_Criteria::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_NotifyResponseFound_Criteria>()._impl_._has_bits_);
  static void set_has_name_symbol(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_value(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

CUserMessage_NotifyResponseFound_Criteria::CUserMessage_NotifyResponseFound_Criteria(::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:CUserMessage_NotifyResponseFound.Criteria)
}
CUserMessage_NotifyResponseFound_Criteria::CUserMessage_NotifyResponseFound_Criteria(const CUserMessage_NotifyResponseFound_Criteria& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_NotifyResponseFound_Criteria* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.value_){}
    , decltype(_impl_.name_symbol_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_value()) {
    _this->_impl_.value_.Set(from._internal_value(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.name_symbol_ = from._impl_.name_symbol_;
  // @@protoc_insertion_point(copy_constructor:CUserMessage_NotifyResponseFound.Criteria)
}

inline void CUserMessage_NotifyResponseFound_Criteria::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_.value_){}
    , decltype(_impl_.name_symbol_){0u}
  };
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_NotifyResponseFound_Criteria::~CUserMessage_NotifyResponseFound_Criteria() {
  // @@protoc_insertion_point(destructor:CUserMessage_NotifyResponseFound.Criteria)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_NotifyResponseFound_Criteria::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.value_.Destroy();
}

void CUserMessage_NotifyResponseFound_Criteria::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_NotifyResponseFound_Criteria::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_NotifyResponseFound.Criteria)
  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) {
    _impl_.value_.ClearNonDefaultToEmpty();
  }
  _impl_.name_symbol_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_NotifyResponseFound_Criteria::_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 uint32 name_symbol = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_name_symbol(&has_bits);
          _impl_.name_symbol_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_NotifyResponseFound.Criteria.value");
          #endif  // !NDEBUG
        } 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* CUserMessage_NotifyResponseFound_Criteria::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_NotifyResponseFound.Criteria)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional uint32 name_symbol = 1;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_name_symbol(), target);
  }

  // optional string value = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_value().data(), static_cast<int>(this->_internal_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_NotifyResponseFound.Criteria.value");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_value(), 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:CUserMessage_NotifyResponseFound.Criteria)
  return target;
}

size_t CUserMessage_NotifyResponseFound_Criteria::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_NotifyResponseFound.Criteria)
  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 & 0x00000003u) {
    // optional string value = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_value());
    }

    // optional uint32 name_symbol = 1;
    if (cached_has_bits & 0x00000002u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_name_symbol());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_NotifyResponseFound_Criteria::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_NotifyResponseFound_Criteria::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_NotifyResponseFound_Criteria::GetClassData() const { return &_class_data_; }


void CUserMessage_NotifyResponseFound_Criteria::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_NotifyResponseFound_Criteria*>(&to_msg);
  auto& from = static_cast<const CUserMessage_NotifyResponseFound_Criteria&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_NotifyResponseFound.Criteria)
  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 & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_value(from._internal_value());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.name_symbol_ = from._impl_.name_symbol_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_NotifyResponseFound_Criteria::CopyFrom(const CUserMessage_NotifyResponseFound_Criteria& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_NotifyResponseFound.Criteria)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_NotifyResponseFound_Criteria::IsInitialized() const {
  return true;
}

void CUserMessage_NotifyResponseFound_Criteria::InternalSwap(CUserMessage_NotifyResponseFound_Criteria* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.value_, lhs_arena,
      &other->_impl_.value_, rhs_arena
  );
  swap(_impl_.name_symbol_, other->_impl_.name_symbol_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_NotifyResponseFound_Criteria::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[104]);
}

// ===================================================================

class CUserMessage_NotifyResponseFound::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_NotifyResponseFound>()._impl_._has_bits_);
  static void set_has_ent_index(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_rule_name(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_response_value(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_response_concept(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_speak_result(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

CUserMessage_NotifyResponseFound::CUserMessage_NotifyResponseFound(::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:CUserMessage_NotifyResponseFound)
}
CUserMessage_NotifyResponseFound::CUserMessage_NotifyResponseFound(const CUserMessage_NotifyResponseFound& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_NotifyResponseFound* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.criteria_){from._impl_.criteria_}
    , decltype(_impl_.int_criteria_names_){from._impl_.int_criteria_names_}
    , /*decltype(_impl_._int_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.int_criteria_values_){from._impl_.int_criteria_values_}
    , /*decltype(_impl_._int_criteria_values_cached_byte_size_)*/{0}
    , decltype(_impl_.float_criteria_names_){from._impl_.float_criteria_names_}
    , /*decltype(_impl_._float_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.float_criteria_values_){from._impl_.float_criteria_values_}
    , decltype(_impl_.symbol_criteria_names_){from._impl_.symbol_criteria_names_}
    , /*decltype(_impl_._symbol_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.symbol_criteria_values_){from._impl_.symbol_criteria_values_}
    , /*decltype(_impl_._symbol_criteria_values_cached_byte_size_)*/{0}
    , decltype(_impl_.rule_name_){}
    , decltype(_impl_.response_value_){}
    , decltype(_impl_.response_concept_){}
    , decltype(_impl_.speak_result_){}
    , decltype(_impl_.ent_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.rule_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.rule_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_rule_name()) {
    _this->_impl_.rule_name_.Set(from._internal_rule_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.response_value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_response_value()) {
    _this->_impl_.response_value_.Set(from._internal_response_value(), 
      _this->GetArenaForAllocation());
  }
  _impl_.response_concept_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_concept_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_response_concept()) {
    _this->_impl_.response_concept_.Set(from._internal_response_concept(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.speak_result_, &from._impl_.speak_result_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.ent_index_) -
    reinterpret_cast<char*>(&_impl_.speak_result_)) + sizeof(_impl_.ent_index_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_NotifyResponseFound)
}

inline void CUserMessage_NotifyResponseFound::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_.criteria_){arena}
    , decltype(_impl_.int_criteria_names_){arena}
    , /*decltype(_impl_._int_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.int_criteria_values_){arena}
    , /*decltype(_impl_._int_criteria_values_cached_byte_size_)*/{0}
    , decltype(_impl_.float_criteria_names_){arena}
    , /*decltype(_impl_._float_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.float_criteria_values_){arena}
    , decltype(_impl_.symbol_criteria_names_){arena}
    , /*decltype(_impl_._symbol_criteria_names_cached_byte_size_)*/{0}
    , decltype(_impl_.symbol_criteria_values_){arena}
    , /*decltype(_impl_._symbol_criteria_values_cached_byte_size_)*/{0}
    , decltype(_impl_.rule_name_){}
    , decltype(_impl_.response_value_){}
    , decltype(_impl_.response_concept_){}
    , decltype(_impl_.speak_result_){0}
    , decltype(_impl_.ent_index_){-1}
  };
  _impl_.rule_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.rule_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.response_value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.response_concept_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_concept_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_NotifyResponseFound::~CUserMessage_NotifyResponseFound() {
  // @@protoc_insertion_point(destructor:CUserMessage_NotifyResponseFound)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_NotifyResponseFound::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.criteria_.~RepeatedPtrField();
  _impl_.int_criteria_names_.~RepeatedField();
  _impl_.int_criteria_values_.~RepeatedField();
  _impl_.float_criteria_names_.~RepeatedField();
  _impl_.float_criteria_values_.~RepeatedField();
  _impl_.symbol_criteria_names_.~RepeatedField();
  _impl_.symbol_criteria_values_.~RepeatedField();
  _impl_.rule_name_.Destroy();
  _impl_.response_value_.Destroy();
  _impl_.response_concept_.Destroy();
}

void CUserMessage_NotifyResponseFound::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_NotifyResponseFound::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_NotifyResponseFound)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.criteria_.Clear();
  _impl_.int_criteria_names_.Clear();
  _impl_.int_criteria_values_.Clear();
  _impl_.float_criteria_names_.Clear();
  _impl_.float_criteria_values_.Clear();
  _impl_.symbol_criteria_names_.Clear();
  _impl_.symbol_criteria_values_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.rule_name_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.response_value_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.response_concept_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00000018u) {
    _impl_.speak_result_ = 0;
    _impl_.ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_NotifyResponseFound::_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 ent_index = 1 [default = -1];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string rule_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_rule_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_NotifyResponseFound.rule_name");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string response_value = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_response_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_NotifyResponseFound.response_value");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string response_concept = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_response_concept();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_NotifyResponseFound.response_concept");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // repeated .CUserMessage_NotifyResponseFound.Criteria criteria = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_criteria(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated uint32 int_criteria_names = 6 [packed = true];
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_int_criteria_names(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 48) {
          _internal_add_int_criteria_names(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated int32 int_criteria_values = 7 [packed = true];
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_int_criteria_values(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 56) {
          _internal_add_int_criteria_values(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated uint32 float_criteria_names = 8 [packed = true];
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_float_criteria_names(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 64) {
          _internal_add_float_criteria_names(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated float float_criteria_values = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 77)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_float_criteria_values(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr));
            ptr += sizeof(float);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<77>(ptr));
        } else if (static_cast<uint8_t>(tag) == 74) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFloatParser(_internal_mutable_float_criteria_values(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated uint32 symbol_criteria_names = 10 [packed = true];
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_symbol_criteria_names(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 80) {
          _internal_add_symbol_criteria_names(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated uint32 symbol_criteria_values = 11 [packed = true];
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_symbol_criteria_values(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 88) {
          _internal_add_symbol_criteria_values(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional int32 speak_result = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) {
          _Internal::set_has_speak_result(&has_bits);
          _impl_.speak_result_ = ::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* CUserMessage_NotifyResponseFound::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_NotifyResponseFound)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 ent_index = 1 [default = -1];
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_ent_index(), target);
  }

  // optional string rule_name = 2;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_rule_name().data(), static_cast<int>(this->_internal_rule_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_NotifyResponseFound.rule_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_rule_name(), target);
  }

  // optional string response_value = 3;
  if (cached_has_bits & 0x00000002u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_response_value().data(), static_cast<int>(this->_internal_response_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_NotifyResponseFound.response_value");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_response_value(), target);
  }

  // optional string response_concept = 4;
  if (cached_has_bits & 0x00000004u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_response_concept().data(), static_cast<int>(this->_internal_response_concept().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_NotifyResponseFound.response_concept");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_response_concept(), target);
  }

  // repeated .CUserMessage_NotifyResponseFound.Criteria criteria = 5;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_criteria_size()); i < n; i++) {
    const auto& repfield = this->_internal_criteria(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(5, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated uint32 int_criteria_names = 6 [packed = true];
  {
    int byte_size = _impl_._int_criteria_names_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteUInt32Packed(
          6, _internal_int_criteria_names(), byte_size, target);
    }
  }

  // repeated int32 int_criteria_values = 7 [packed = true];
  {
    int byte_size = _impl_._int_criteria_values_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteInt32Packed(
          7, _internal_int_criteria_values(), byte_size, target);
    }
  }

  // repeated uint32 float_criteria_names = 8 [packed = true];
  {
    int byte_size = _impl_._float_criteria_names_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteUInt32Packed(
          8, _internal_float_criteria_names(), byte_size, target);
    }
  }

  // repeated float float_criteria_values = 9;
  for (int i = 0, n = this->_internal_float_criteria_values_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(9, this->_internal_float_criteria_values(i), target);
  }

  // repeated uint32 symbol_criteria_names = 10 [packed = true];
  {
    int byte_size = _impl_._symbol_criteria_names_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteUInt32Packed(
          10, _internal_symbol_criteria_names(), byte_size, target);
    }
  }

  // repeated uint32 symbol_criteria_values = 11 [packed = true];
  {
    int byte_size = _impl_._symbol_criteria_values_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteUInt32Packed(
          11, _internal_symbol_criteria_values(), byte_size, target);
    }
  }

  // optional int32 speak_result = 12;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(12, this->_internal_speak_result(), 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:CUserMessage_NotifyResponseFound)
  return target;
}

size_t CUserMessage_NotifyResponseFound::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_NotifyResponseFound)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .CUserMessage_NotifyResponseFound.Criteria criteria = 5;
  total_size += 1UL * this->_internal_criteria_size();
  for (const auto& msg : this->_impl_.criteria_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated uint32 int_criteria_names = 6 [packed = true];
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.int_criteria_names_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._int_criteria_names_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // repeated int32 int_criteria_values = 7 [packed = true];
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int32Size(this->_impl_.int_criteria_values_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._int_criteria_values_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // repeated uint32 float_criteria_names = 8 [packed = true];
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.float_criteria_names_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._float_criteria_names_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // repeated float float_criteria_values = 9;
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_float_criteria_values_size());
    size_t data_size = 4UL * count;
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_float_criteria_values_size());
    total_size += data_size;
  }

  // repeated uint32 symbol_criteria_names = 10 [packed = true];
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.symbol_criteria_names_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._symbol_criteria_names_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // repeated uint32 symbol_criteria_values = 11 [packed = true];
  {
    size_t data_size = ::_pbi::WireFormatLite::
      UInt32Size(this->_impl_.symbol_criteria_values_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._symbol_criteria_values_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional string rule_name = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_rule_name());
    }

    // optional string response_value = 3;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_response_value());
    }

    // optional string response_concept = 4;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_response_concept());
    }

    // optional int32 speak_result = 12;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_speak_result());
    }

    // optional int32 ent_index = 1 [default = -1];
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_ent_index());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_NotifyResponseFound::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_NotifyResponseFound::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_NotifyResponseFound::GetClassData() const { return &_class_data_; }


void CUserMessage_NotifyResponseFound::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_NotifyResponseFound*>(&to_msg);
  auto& from = static_cast<const CUserMessage_NotifyResponseFound&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_NotifyResponseFound)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.criteria_.MergeFrom(from._impl_.criteria_);
  _this->_impl_.int_criteria_names_.MergeFrom(from._impl_.int_criteria_names_);
  _this->_impl_.int_criteria_values_.MergeFrom(from._impl_.int_criteria_values_);
  _this->_impl_.float_criteria_names_.MergeFrom(from._impl_.float_criteria_names_);
  _this->_impl_.float_criteria_values_.MergeFrom(from._impl_.float_criteria_values_);
  _this->_impl_.symbol_criteria_names_.MergeFrom(from._impl_.symbol_criteria_names_);
  _this->_impl_.symbol_criteria_values_.MergeFrom(from._impl_.symbol_criteria_values_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_rule_name(from._internal_rule_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_response_value(from._internal_response_value());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_response_concept(from._internal_response_concept());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.speak_result_ = from._impl_.speak_result_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_NotifyResponseFound::CopyFrom(const CUserMessage_NotifyResponseFound& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_NotifyResponseFound)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_NotifyResponseFound::IsInitialized() const {
  return true;
}

void CUserMessage_NotifyResponseFound::InternalSwap(CUserMessage_NotifyResponseFound* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.criteria_.InternalSwap(&other->_impl_.criteria_);
  _impl_.int_criteria_names_.InternalSwap(&other->_impl_.int_criteria_names_);
  _impl_.int_criteria_values_.InternalSwap(&other->_impl_.int_criteria_values_);
  _impl_.float_criteria_names_.InternalSwap(&other->_impl_.float_criteria_names_);
  _impl_.float_criteria_values_.InternalSwap(&other->_impl_.float_criteria_values_);
  _impl_.symbol_criteria_names_.InternalSwap(&other->_impl_.symbol_criteria_names_);
  _impl_.symbol_criteria_values_.InternalSwap(&other->_impl_.symbol_criteria_values_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.rule_name_, lhs_arena,
      &other->_impl_.rule_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.response_value_, lhs_arena,
      &other->_impl_.response_value_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.response_concept_, lhs_arena,
      &other->_impl_.response_concept_, rhs_arena
  );
  swap(_impl_.speak_result_, other->_impl_.speak_result_);
  swap(_impl_.ent_index_, other->_impl_.ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_NotifyResponseFound::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[105]);
}

// ===================================================================

class CUserMessage_PlayResponseConditional::_Internal {
 public:
  using HasBits = decltype(std::declval<CUserMessage_PlayResponseConditional>()._impl_._has_bits_);
  static void set_has_ent_index(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_response(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static const ::CMsgVector& ent_origin(const CUserMessage_PlayResponseConditional* msg);
  static void set_has_ent_origin(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_pre_delay(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_mix_priority(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
};

const ::CMsgVector&
CUserMessage_PlayResponseConditional::_Internal::ent_origin(const CUserMessage_PlayResponseConditional* msg) {
  return *msg->_impl_.ent_origin_;
}
void CUserMessage_PlayResponseConditional::clear_ent_origin() {
  if (_impl_.ent_origin_ != nullptr) _impl_.ent_origin_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
CUserMessage_PlayResponseConditional::CUserMessage_PlayResponseConditional(::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:CUserMessage_PlayResponseConditional)
}
CUserMessage_PlayResponseConditional::CUserMessage_PlayResponseConditional(const CUserMessage_PlayResponseConditional& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CUserMessage_PlayResponseConditional* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.player_slots_){from._impl_.player_slots_}
    , decltype(_impl_.response_){}
    , decltype(_impl_.ent_origin_){nullptr}
    , decltype(_impl_.pre_delay_){}
    , decltype(_impl_.mix_priority_){}
    , decltype(_impl_.ent_index_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.response_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_response()) {
    _this->_impl_.response_.Set(from._internal_response(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_ent_origin()) {
    _this->_impl_.ent_origin_ = new ::CMsgVector(*from._impl_.ent_origin_);
  }
  ::memcpy(&_impl_.pre_delay_, &from._impl_.pre_delay_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.ent_index_) -
    reinterpret_cast<char*>(&_impl_.pre_delay_)) + sizeof(_impl_.ent_index_));
  // @@protoc_insertion_point(copy_constructor:CUserMessage_PlayResponseConditional)
}

inline void CUserMessage_PlayResponseConditional::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_slots_){arena}
    , decltype(_impl_.response_){}
    , decltype(_impl_.ent_origin_){nullptr}
    , decltype(_impl_.pre_delay_){0}
    , decltype(_impl_.mix_priority_){0}
    , decltype(_impl_.ent_index_){-1}
  };
  _impl_.response_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.response_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CUserMessage_PlayResponseConditional::~CUserMessage_PlayResponseConditional() {
  // @@protoc_insertion_point(destructor:CUserMessage_PlayResponseConditional)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CUserMessage_PlayResponseConditional::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.player_slots_.~RepeatedField();
  _impl_.response_.Destroy();
  if (this != internal_default_instance()) delete _impl_.ent_origin_;
}

void CUserMessage_PlayResponseConditional::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CUserMessage_PlayResponseConditional::Clear() {
// @@protoc_insertion_point(message_clear_start:CUserMessage_PlayResponseConditional)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.player_slots_.Clear();
  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.response_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(_impl_.ent_origin_ != nullptr);
      _impl_.ent_origin_->Clear();
    }
  }
  if (cached_has_bits & 0x0000001cu) {
    ::memset(&_impl_.pre_delay_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.mix_priority_) -
        reinterpret_cast<char*>(&_impl_.pre_delay_)) + sizeof(_impl_.mix_priority_));
    _impl_.ent_index_ = -1;
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CUserMessage_PlayResponseConditional::_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 ent_index = 1 [default = -1];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_ent_index(&has_bits);
          _impl_.ent_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated int32 player_slots = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          ptr -= 1;
          do {
            ptr += 1;
            _internal_add_player_slots(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<16>(ptr));
        } else if (static_cast<uint8_t>(tag) == 18) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_player_slots(), ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string response = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_response();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CUserMessage_PlayResponseConditional.response");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgVector ent_origin = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_ent_origin(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float pre_delay = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_pre_delay(&has_bits);
          _impl_.pre_delay_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional int32 mix_priority = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_mix_priority(&has_bits);
          _impl_.mix_priority_ = ::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* CUserMessage_PlayResponseConditional::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:CUserMessage_PlayResponseConditional)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  // optional int32 ent_index = 1 [default = -1];
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(1, this->_internal_ent_index(), target);
  }

  // repeated int32 player_slots = 2;
  for (int i = 0, n = this->_internal_player_slots_size(); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_player_slots(i), target);
  }

  // optional string response = 3;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_response().data(), static_cast<int>(this->_internal_response().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CUserMessage_PlayResponseConditional.response");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_response(), target);
  }

  // optional .CMsgVector ent_origin = 4;
  if (cached_has_bits & 0x00000002u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::ent_origin(this),
        _Internal::ent_origin(this).GetCachedSize(), target, stream);
  }

  // optional float pre_delay = 5;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_pre_delay(), target);
  }

  // optional int32 mix_priority = 6;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(6, this->_internal_mix_priority(), 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:CUserMessage_PlayResponseConditional)
  return target;
}

size_t CUserMessage_PlayResponseConditional::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:CUserMessage_PlayResponseConditional)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated int32 player_slots = 2;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int32Size(this->_impl_.player_slots_);
    total_size += 1 *
                  ::_pbi::FromIntSize(this->_internal_player_slots_size());
    total_size += data_size;
  }

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional string response = 3;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_response());
    }

    // optional .CMsgVector ent_origin = 4;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.ent_origin_);
    }

    // optional float pre_delay = 5;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional int32 mix_priority = 6;
    if (cached_has_bits & 0x00000008u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_mix_priority());
    }

    // optional int32 ent_index = 1 [default = -1];
    if (cached_has_bits & 0x00000010u) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_ent_index());
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CUserMessage_PlayResponseConditional::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CUserMessage_PlayResponseConditional::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CUserMessage_PlayResponseConditional::GetClassData() const { return &_class_data_; }


void CUserMessage_PlayResponseConditional::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CUserMessage_PlayResponseConditional*>(&to_msg);
  auto& from = static_cast<const CUserMessage_PlayResponseConditional&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:CUserMessage_PlayResponseConditional)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.player_slots_.MergeFrom(from._impl_.player_slots_);
  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_response(from._internal_response());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_mutable_ent_origin()->::CMsgVector::MergeFrom(
          from._internal_ent_origin());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.pre_delay_ = from._impl_.pre_delay_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.mix_priority_ = from._impl_.mix_priority_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.ent_index_ = from._impl_.ent_index_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CUserMessage_PlayResponseConditional::CopyFrom(const CUserMessage_PlayResponseConditional& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:CUserMessage_PlayResponseConditional)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CUserMessage_PlayResponseConditional::IsInitialized() const {
  return true;
}

void CUserMessage_PlayResponseConditional::InternalSwap(CUserMessage_PlayResponseConditional* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.player_slots_.InternalSwap(&other->_impl_.player_slots_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.response_, lhs_arena,
      &other->_impl_.response_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CUserMessage_PlayResponseConditional, _impl_.mix_priority_)
      + sizeof(CUserMessage_PlayResponseConditional::_impl_.mix_priority_)
      - PROTOBUF_FIELD_OFFSET(CUserMessage_PlayResponseConditional, _impl_.ent_origin_)>(
          reinterpret_cast<char*>(&_impl_.ent_origin_),
          reinterpret_cast<char*>(&other->_impl_.ent_origin_));
  swap(_impl_.ent_index_, other->_impl_.ent_index_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CUserMessage_PlayResponseConditional::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_usermessages_2eproto_getter, &descriptor_table_usermessages_2eproto_once,
      file_level_metadata_usermessages_2eproto[106]);
}

// @@protoc_insertion_point(namespace_scope)
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::CUserMessageAchievementEvent*
Arena::CreateMaybeMessage< ::CUserMessageAchievementEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageAchievementEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCloseCaption*
Arena::CreateMaybeMessage< ::CUserMessageCloseCaption >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCloseCaption >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCloseCaptionDirect*
Arena::CreateMaybeMessage< ::CUserMessageCloseCaptionDirect >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCloseCaptionDirect >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCloseCaptionPlaceholder*
Arena::CreateMaybeMessage< ::CUserMessageCloseCaptionPlaceholder >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCloseCaptionPlaceholder >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCurrentTimescale*
Arena::CreateMaybeMessage< ::CUserMessageCurrentTimescale >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCurrentTimescale >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageDesiredTimescale*
Arena::CreateMaybeMessage< ::CUserMessageDesiredTimescale >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageDesiredTimescale >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageFade*
Arena::CreateMaybeMessage< ::CUserMessageFade >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageFade >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageShake*
Arena::CreateMaybeMessage< ::CUserMessageShake >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageShake >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageShakeDir*
Arena::CreateMaybeMessage< ::CUserMessageShakeDir >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageShakeDir >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageWaterShake*
Arena::CreateMaybeMessage< ::CUserMessageWaterShake >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageWaterShake >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageScreenTilt*
Arena::CreateMaybeMessage< ::CUserMessageScreenTilt >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageScreenTilt >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageSayText*
Arena::CreateMaybeMessage< ::CUserMessageSayText >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageSayText >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageSayText2*
Arena::CreateMaybeMessage< ::CUserMessageSayText2 >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageSayText2 >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageHudMsg*
Arena::CreateMaybeMessage< ::CUserMessageHudMsg >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageHudMsg >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageHudText*
Arena::CreateMaybeMessage< ::CUserMessageHudText >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageHudText >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageTextMsg*
Arena::CreateMaybeMessage< ::CUserMessageTextMsg >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageTextMsg >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageGameTitle*
Arena::CreateMaybeMessage< ::CUserMessageGameTitle >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageGameTitle >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageResetHUD*
Arena::CreateMaybeMessage< ::CUserMessageResetHUD >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageResetHUD >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageSendAudio*
Arena::CreateMaybeMessage< ::CUserMessageSendAudio >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageSendAudio >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageAudioParameter*
Arena::CreateMaybeMessage< ::CUserMessageAudioParameter >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageAudioParameter >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageVoiceMask*
Arena::CreateMaybeMessage< ::CUserMessageVoiceMask >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageVoiceMask >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestState*
Arena::CreateMaybeMessage< ::CUserMessageRequestState >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestState >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRumble*
Arena::CreateMaybeMessage< ::CUserMessageRumble >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRumble >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageSayTextChannel*
Arena::CreateMaybeMessage< ::CUserMessageSayTextChannel >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageSayTextChannel >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageColoredText*
Arena::CreateMaybeMessage< ::CUserMessageColoredText >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageColoredText >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageItemPickup*
Arena::CreateMaybeMessage< ::CUserMessageItemPickup >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageItemPickup >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageAmmoDenied*
Arena::CreateMaybeMessage< ::CUserMessageAmmoDenied >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageAmmoDenied >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageShowMenu*
Arena::CreateMaybeMessage< ::CUserMessageShowMenu >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageShowMenu >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCreditsMsg*
Arena::CreateMaybeMessage< ::CUserMessageCreditsMsg >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCreditsMsg >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessagePlayJingle*
Arena::CreateMaybeMessage< ::CEntityMessagePlayJingle >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessagePlayJingle >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessageScreenOverlay*
Arena::CreateMaybeMessage< ::CEntityMessageScreenOverlay >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessageScreenOverlay >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessageRemoveAllDecals*
Arena::CreateMaybeMessage< ::CEntityMessageRemoveAllDecals >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessageRemoveAllDecals >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessagePropagateForce*
Arena::CreateMaybeMessage< ::CEntityMessagePropagateForce >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessagePropagateForce >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessageDoSpark*
Arena::CreateMaybeMessage< ::CEntityMessageDoSpark >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessageDoSpark >(arena);
}
template<> PROTOBUF_NOINLINE ::CEntityMessageFixAngle*
Arena::CreateMaybeMessage< ::CEntityMessageFixAngle >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CEntityMessageFixAngle >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCameraTransition_Transition_DataDriven*
Arena::CreateMaybeMessage< ::CUserMessageCameraTransition_Transition_DataDriven >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCameraTransition_Transition_DataDriven >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageCameraTransition*
Arena::CreateMaybeMessage< ::CUserMessageCameraTransition >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageCameraTransition >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ReleaseParticleIndex*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ReleaseParticleIndex >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ReleaseParticleIndex >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_CreateParticle*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_CreateParticle >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_CreateParticle >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_DestroyParticle*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_DestroyParticle >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_DestroyParticle >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_DestroyParticleInvolving*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_DestroyParticleInvolving >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_DestroyParticleInvolving >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_DestroyParticleNamed*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_DestroyParticleNamed >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_DestroyParticleNamed >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticle_OBSOLETE >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleTransform*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleTransform >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleTransform >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleFallback*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleFallback >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleFallback >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleOffset*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleOffset >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleOffset >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleEnt*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleEnt >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleEnt >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleSetFrozen*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleSetFrozen >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleSetFrozen >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateParticleShouldDraw*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateParticleShouldDraw >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateParticleShouldDraw >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ChangeControlPointAttachment*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ChangeControlPointAttachment >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ChangeControlPointAttachment >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateEntityPosition*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateEntityPosition >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateEntityPosition >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleFoWProperties*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleFoWProperties >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleFoWProperties >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleShouldCheckFoW >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetControlPointModel*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetControlPointModel >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetControlPointModel >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetControlPointSnapshot*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetControlPointSnapshot >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetControlPointSnapshot >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleText*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleText >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleText >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetTextureAttribute*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetTextureAttribute >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetTextureAttribute >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetSceneObjectGenericFlag >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetSceneObjectTintAndDesat >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ParticleSkipToTime*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ParticleSkipToTime >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ParticleSkipToTime >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ParticleCanFreeze*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ParticleCanFreeze >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ParticleCanFreeze >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ParticleFreezeTransitionOverride >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_FreezeParticleInvolving*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_FreezeParticleInvolving >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_FreezeParticleInvolving >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_AddModellistOverrideElement*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_AddModellistOverrideElement >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_AddModellistOverrideElement >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_ClearModellistOverride*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_ClearModellistOverride >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_ClearModellistOverride >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleNamedValueContext*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleNamedValueContext >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleNamedValueContext >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_CreatePhysicsSim*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_CreatePhysicsSim >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_CreatePhysicsSim >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_DestroyPhysicsSim*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_DestroyPhysicsSim >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_DestroyPhysicsSim >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetVData*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetVData >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetVData >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetMaterialOverride*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetMaterialOverride >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetMaterialOverride >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_AddFan*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_AddFan >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_AddFan >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_UpdateFan*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_UpdateFan >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_UpdateFan >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_RemoveFan*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_RemoveFan >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_RemoveFan >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager_SetParticleClusterGrowth*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager_SetParticleClusterGrowth >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager_SetParticleClusterGrowth >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_ParticleManager*
Arena::CreateMaybeMessage< ::CUserMsg_ParticleManager >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_ParticleManager >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_HudError*
Arena::CreateMaybeMessage< ::CUserMsg_HudError >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_HudError >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMsg_CustomGameEvent*
Arena::CreateMaybeMessage< ::CUserMsg_CustomGameEvent >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMsg_CustomGameEvent >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageHapticsManagerPulse*
Arena::CreateMaybeMessage< ::CUserMessageHapticsManagerPulse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageHapticsManagerPulse >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageHapticsManagerEffect*
Arena::CreateMaybeMessage< ::CUserMessageHapticsManagerEffect >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageHapticsManagerEffect >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageAnimStateGraphState*
Arena::CreateMaybeMessage< ::CUserMessageAnimStateGraphState >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageAnimStateGraphState >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageUpdateCssClasses*
Arena::CreateMaybeMessage< ::CUserMessageUpdateCssClasses >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageUpdateCssClasses >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageServerFrameTime*
Arena::CreateMaybeMessage< ::CUserMessageServerFrameTime >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageServerFrameTime >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageLagCompensationError*
Arena::CreateMaybeMessage< ::CUserMessageLagCompensationError >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageLagCompensationError >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestDllStatus*
Arena::CreateMaybeMessage< ::CUserMessageRequestDllStatus >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestDllStatus >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestUtilAction*
Arena::CreateMaybeMessage< ::CUserMessageRequestUtilAction >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestUtilAction >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_UtilMsg_Response_ItemDetail*
Arena::CreateMaybeMessage< ::CUserMessage_UtilMsg_Response_ItemDetail >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_UtilMsg_Response_ItemDetail >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_UtilMsg_Response*
Arena::CreateMaybeMessage< ::CUserMessage_UtilMsg_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_UtilMsg_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_DllStatus_CVDiagnostic*
Arena::CreateMaybeMessage< ::CUserMessage_DllStatus_CVDiagnostic >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_DllStatus_CVDiagnostic >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_DllStatus_CModule*
Arena::CreateMaybeMessage< ::CUserMessage_DllStatus_CModule >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_DllStatus_CModule >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_DllStatus*
Arena::CreateMaybeMessage< ::CUserMessage_DllStatus >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_DllStatus >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestInventory*
Arena::CreateMaybeMessage< ::CUserMessageRequestInventory >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestInventory >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_Inventory_Response_InventoryDetail*
Arena::CreateMaybeMessage< ::CUserMessage_Inventory_Response_InventoryDetail >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_Inventory_Response_InventoryDetail >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_Inventory_Response*
Arena::CreateMaybeMessage< ::CUserMessage_Inventory_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_Inventory_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestDiagnostic_Diagnostic*
Arena::CreateMaybeMessage< ::CUserMessageRequestDiagnostic_Diagnostic >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestDiagnostic_Diagnostic >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessageRequestDiagnostic*
Arena::CreateMaybeMessage< ::CUserMessageRequestDiagnostic >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessageRequestDiagnostic >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_Diagnostic_Response_Diagnostic*
Arena::CreateMaybeMessage< ::CUserMessage_Diagnostic_Response_Diagnostic >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_Diagnostic_Response_Diagnostic >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_Diagnostic_Response*
Arena::CreateMaybeMessage< ::CUserMessage_Diagnostic_Response >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_Diagnostic_Response >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_ExtraUserData*
Arena::CreateMaybeMessage< ::CUserMessage_ExtraUserData >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_ExtraUserData >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_NotifyResponseFound_Criteria*
Arena::CreateMaybeMessage< ::CUserMessage_NotifyResponseFound_Criteria >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_NotifyResponseFound_Criteria >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_NotifyResponseFound*
Arena::CreateMaybeMessage< ::CUserMessage_NotifyResponseFound >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_NotifyResponseFound >(arena);
}
template<> PROTOBUF_NOINLINE ::CUserMessage_PlayResponseConditional*
Arena::CreateMaybeMessage< ::CUserMessage_PlayResponseConditional >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CUserMessage_PlayResponseConditional >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
