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

#ifndef GOOGLE_PROTOBUF_INCLUDED_cs_5fusercmd_2eproto
#define GOOGLE_PROTOBUF_INCLUDED_cs_5fusercmd_2eproto

#include <limits>
#include <string>

#include <google/protobuf/port_def.inc>
#if PROTOBUF_VERSION < 3021000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers. Please update
#error your headers.
#endif
#if 3021008 < PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers. Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/port_undef.inc>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/arena.h>
#include <google/protobuf/arenastring.h>
#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/metadata_lite.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/message.h>
#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
#include <google/protobuf/extension_set.h>  // IWYU pragma: export
#include <google/protobuf/unknown_field_set.h>
#include "networkbasetypes.pb.h"
#include "usercmd.pb.h"
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>
#define PROTOBUF_INTERNAL_EXPORT_cs_5fusercmd_2eproto
PROTOBUF_NAMESPACE_OPEN
namespace internal {
class AnyMetadata;
}  // namespace internal
PROTOBUF_NAMESPACE_CLOSE

// Internal implementation detail -- do not use these members.
struct TableStruct_cs_5fusercmd_2eproto {
  static const uint32_t offsets[];
};
extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_cs_5fusercmd_2eproto;
class CSGOInputHistoryEntryPB;
struct CSGOInputHistoryEntryPBDefaultTypeInternal;
extern CSGOInputHistoryEntryPBDefaultTypeInternal _CSGOInputHistoryEntryPB_default_instance_;
class CSGOInterpolationInfoPB;
struct CSGOInterpolationInfoPBDefaultTypeInternal;
extern CSGOInterpolationInfoPBDefaultTypeInternal _CSGOInterpolationInfoPB_default_instance_;
class CSGOInterpolationInfoPB_CL;
struct CSGOInterpolationInfoPB_CLDefaultTypeInternal;
extern CSGOInterpolationInfoPB_CLDefaultTypeInternal _CSGOInterpolationInfoPB_CL_default_instance_;
class CSGOUserCmdPB;
struct CSGOUserCmdPBDefaultTypeInternal;
extern CSGOUserCmdPBDefaultTypeInternal _CSGOUserCmdPB_default_instance_;
PROTOBUF_NAMESPACE_OPEN
template<> ::CSGOInputHistoryEntryPB* Arena::CreateMaybeMessage<::CSGOInputHistoryEntryPB>(Arena*);
template<> ::CSGOInterpolationInfoPB* Arena::CreateMaybeMessage<::CSGOInterpolationInfoPB>(Arena*);
template<> ::CSGOInterpolationInfoPB_CL* Arena::CreateMaybeMessage<::CSGOInterpolationInfoPB_CL>(Arena*);
template<> ::CSGOUserCmdPB* Arena::CreateMaybeMessage<::CSGOUserCmdPB>(Arena*);
PROTOBUF_NAMESPACE_CLOSE

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

class CSGOInterpolationInfoPB final :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:CSGOInterpolationInfoPB) */ {
 public:
  inline CSGOInterpolationInfoPB() : CSGOInterpolationInfoPB(nullptr) {}
  ~CSGOInterpolationInfoPB() override;
  explicit PROTOBUF_CONSTEXPR CSGOInterpolationInfoPB(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  CSGOInterpolationInfoPB(const CSGOInterpolationInfoPB& from);
  CSGOInterpolationInfoPB(CSGOInterpolationInfoPB&& from) noexcept
    : CSGOInterpolationInfoPB() {
    *this = ::std::move(from);
  }

  inline CSGOInterpolationInfoPB& operator=(const CSGOInterpolationInfoPB& from) {
    CopyFrom(from);
    return *this;
  }
  inline CSGOInterpolationInfoPB& operator=(CSGOInterpolationInfoPB&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
  }
  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CSGOInterpolationInfoPB& default_instance() {
    return *internal_default_instance();
  }
  static inline const CSGOInterpolationInfoPB* internal_default_instance() {
    return reinterpret_cast<const CSGOInterpolationInfoPB*>(
               &_CSGOInterpolationInfoPB_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  friend void swap(CSGOInterpolationInfoPB& a, CSGOInterpolationInfoPB& b) {
    a.Swap(&b);
  }
  inline void Swap(CSGOInterpolationInfoPB* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(CSGOInterpolationInfoPB* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  CSGOInterpolationInfoPB* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<CSGOInterpolationInfoPB>(arena);
  }
  using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
  void CopyFrom(const CSGOInterpolationInfoPB& from);
  using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
  void MergeFrom( const CSGOInterpolationInfoPB& from) {
    CSGOInterpolationInfoPB::MergeImpl(*this, from);
  }
  private:
  static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  uint8_t* _InternalSerialize(
      uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CSGOInterpolationInfoPB* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "CSGOInterpolationInfoPB";
  }
  protected:
  explicit CSGOInterpolationInfoPB(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                       bool is_message_owned = false);
  public:

  static const ClassData _class_data_;
  const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kFracFieldNumber = 3,
    kSrcTickFieldNumber = 1,
    kDstTickFieldNumber = 2,
  };
  // optional float frac = 3 [default = 0];
  bool has_frac() const;
  private:
  bool _internal_has_frac() const;
  public:
  void clear_frac();
  float frac() const;
  void set_frac(float value);
  private:
  float _internal_frac() const;
  void _internal_set_frac(float value);
  public:

  // optional int32 src_tick = 1 [default = -1];
  bool has_src_tick() const;
  private:
  bool _internal_has_src_tick() const;
  public:
  void clear_src_tick();
  int32_t src_tick() const;
  void set_src_tick(int32_t value);
  private:
  int32_t _internal_src_tick() const;
  void _internal_set_src_tick(int32_t value);
  public:

  // optional int32 dst_tick = 2 [default = -1];
  bool has_dst_tick() const;
  private:
  bool _internal_has_dst_tick() const;
  public:
  void clear_dst_tick();
  int32_t dst_tick() const;
  void set_dst_tick(int32_t value);
  private:
  int32_t _internal_dst_tick() const;
  void _internal_set_dst_tick(int32_t value);
  public:

  // @@protoc_insertion_point(class_scope:CSGOInterpolationInfoPB)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    float frac_;
    int32_t src_tick_;
    int32_t dst_tick_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_cs_5fusercmd_2eproto;
};
// -------------------------------------------------------------------

class CSGOInterpolationInfoPB_CL final :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:CSGOInterpolationInfoPB_CL) */ {
 public:
  inline CSGOInterpolationInfoPB_CL() : CSGOInterpolationInfoPB_CL(nullptr) {}
  ~CSGOInterpolationInfoPB_CL() override;
  explicit PROTOBUF_CONSTEXPR CSGOInterpolationInfoPB_CL(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  CSGOInterpolationInfoPB_CL(const CSGOInterpolationInfoPB_CL& from);
  CSGOInterpolationInfoPB_CL(CSGOInterpolationInfoPB_CL&& from) noexcept
    : CSGOInterpolationInfoPB_CL() {
    *this = ::std::move(from);
  }

  inline CSGOInterpolationInfoPB_CL& operator=(const CSGOInterpolationInfoPB_CL& from) {
    CopyFrom(from);
    return *this;
  }
  inline CSGOInterpolationInfoPB_CL& operator=(CSGOInterpolationInfoPB_CL&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
  }
  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CSGOInterpolationInfoPB_CL& default_instance() {
    return *internal_default_instance();
  }
  static inline const CSGOInterpolationInfoPB_CL* internal_default_instance() {
    return reinterpret_cast<const CSGOInterpolationInfoPB_CL*>(
               &_CSGOInterpolationInfoPB_CL_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  friend void swap(CSGOInterpolationInfoPB_CL& a, CSGOInterpolationInfoPB_CL& b) {
    a.Swap(&b);
  }
  inline void Swap(CSGOInterpolationInfoPB_CL* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(CSGOInterpolationInfoPB_CL* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  CSGOInterpolationInfoPB_CL* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<CSGOInterpolationInfoPB_CL>(arena);
  }
  using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
  void CopyFrom(const CSGOInterpolationInfoPB_CL& from);
  using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
  void MergeFrom( const CSGOInterpolationInfoPB_CL& from) {
    CSGOInterpolationInfoPB_CL::MergeImpl(*this, from);
  }
  private:
  static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  uint8_t* _InternalSerialize(
      uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CSGOInterpolationInfoPB_CL* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "CSGOInterpolationInfoPB_CL";
  }
  protected:
  explicit CSGOInterpolationInfoPB_CL(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                       bool is_message_owned = false);
  public:

  static const ClassData _class_data_;
  const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kFracFieldNumber = 3,
  };
  // optional float frac = 3 [default = 0];
  bool has_frac() const;
  private:
  bool _internal_has_frac() const;
  public:
  void clear_frac();
  float frac() const;
  void set_frac(float value);
  private:
  float _internal_frac() const;
  void _internal_set_frac(float value);
  public:

  // @@protoc_insertion_point(class_scope:CSGOInterpolationInfoPB_CL)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    float frac_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_cs_5fusercmd_2eproto;
};
// -------------------------------------------------------------------

class CSGOInputHistoryEntryPB final :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:CSGOInputHistoryEntryPB) */ {
 public:
  inline CSGOInputHistoryEntryPB() : CSGOInputHistoryEntryPB(nullptr) {}
  ~CSGOInputHistoryEntryPB() override;
  explicit PROTOBUF_CONSTEXPR CSGOInputHistoryEntryPB(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  CSGOInputHistoryEntryPB(const CSGOInputHistoryEntryPB& from);
  CSGOInputHistoryEntryPB(CSGOInputHistoryEntryPB&& from) noexcept
    : CSGOInputHistoryEntryPB() {
    *this = ::std::move(from);
  }

  inline CSGOInputHistoryEntryPB& operator=(const CSGOInputHistoryEntryPB& from) {
    CopyFrom(from);
    return *this;
  }
  inline CSGOInputHistoryEntryPB& operator=(CSGOInputHistoryEntryPB&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
  }
  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CSGOInputHistoryEntryPB& default_instance() {
    return *internal_default_instance();
  }
  static inline const CSGOInputHistoryEntryPB* internal_default_instance() {
    return reinterpret_cast<const CSGOInputHistoryEntryPB*>(
               &_CSGOInputHistoryEntryPB_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  friend void swap(CSGOInputHistoryEntryPB& a, CSGOInputHistoryEntryPB& b) {
    a.Swap(&b);
  }
  inline void Swap(CSGOInputHistoryEntryPB* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(CSGOInputHistoryEntryPB* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  CSGOInputHistoryEntryPB* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<CSGOInputHistoryEntryPB>(arena);
  }
  using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
  void CopyFrom(const CSGOInputHistoryEntryPB& from);
  using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
  void MergeFrom( const CSGOInputHistoryEntryPB& from) {
    CSGOInputHistoryEntryPB::MergeImpl(*this, from);
  }
  private:
  static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  uint8_t* _InternalSerialize(
      uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CSGOInputHistoryEntryPB* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "CSGOInputHistoryEntryPB";
  }
  protected:
  explicit CSGOInputHistoryEntryPB(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                       bool is_message_owned = false);
  public:

  static const ClassData _class_data_;
  const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kViewAnglesFieldNumber = 2,
    kClInterpFieldNumber = 12,
    kSvInterp0FieldNumber = 13,
    kSvInterp1FieldNumber = 14,
    kPlayerInterpFieldNumber = 15,
    kShootPositionFieldNumber = 66,
    kTargetHeadPosCheckFieldNumber = 67,
    kTargetAbsPosCheckFieldNumber = 68,
    kTargetAbsAngCheckFieldNumber = 69,
    kRenderTickCountFieldNumber = 4,
    kRenderTickFractionFieldNumber = 5,
    kPlayerTickCountFieldNumber = 6,
    kPlayerTickFractionFieldNumber = 7,
    kFrameNumberFieldNumber = 64,
    kTargetEntIndexFieldNumber = 65,
  };
  // optional .CMsgQAngle view_angles = 2;
  bool has_view_angles() const;
  private:
  bool _internal_has_view_angles() const;
  public:
  void clear_view_angles();
  const ::CMsgQAngle& view_angles() const;
  PROTOBUF_NODISCARD ::CMsgQAngle* release_view_angles();
  ::CMsgQAngle* mutable_view_angles();
  void set_allocated_view_angles(::CMsgQAngle* view_angles);
  private:
  const ::CMsgQAngle& _internal_view_angles() const;
  ::CMsgQAngle* _internal_mutable_view_angles();
  public:
  void unsafe_arena_set_allocated_view_angles(
      ::CMsgQAngle* view_angles);
  ::CMsgQAngle* unsafe_arena_release_view_angles();

  // optional .CSGOInterpolationInfoPB_CL cl_interp = 12;
  bool has_cl_interp() const;
  private:
  bool _internal_has_cl_interp() const;
  public:
  void clear_cl_interp();
  const ::CSGOInterpolationInfoPB_CL& cl_interp() const;
  PROTOBUF_NODISCARD ::CSGOInterpolationInfoPB_CL* release_cl_interp();
  ::CSGOInterpolationInfoPB_CL* mutable_cl_interp();
  void set_allocated_cl_interp(::CSGOInterpolationInfoPB_CL* cl_interp);
  private:
  const ::CSGOInterpolationInfoPB_CL& _internal_cl_interp() const;
  ::CSGOInterpolationInfoPB_CL* _internal_mutable_cl_interp();
  public:
  void unsafe_arena_set_allocated_cl_interp(
      ::CSGOInterpolationInfoPB_CL* cl_interp);
  ::CSGOInterpolationInfoPB_CL* unsafe_arena_release_cl_interp();

  // optional .CSGOInterpolationInfoPB sv_interp0 = 13;
  bool has_sv_interp0() const;
  private:
  bool _internal_has_sv_interp0() const;
  public:
  void clear_sv_interp0();
  const ::CSGOInterpolationInfoPB& sv_interp0() const;
  PROTOBUF_NODISCARD ::CSGOInterpolationInfoPB* release_sv_interp0();
  ::CSGOInterpolationInfoPB* mutable_sv_interp0();
  void set_allocated_sv_interp0(::CSGOInterpolationInfoPB* sv_interp0);
  private:
  const ::CSGOInterpolationInfoPB& _internal_sv_interp0() const;
  ::CSGOInterpolationInfoPB* _internal_mutable_sv_interp0();
  public:
  void unsafe_arena_set_allocated_sv_interp0(
      ::CSGOInterpolationInfoPB* sv_interp0);
  ::CSGOInterpolationInfoPB* unsafe_arena_release_sv_interp0();

  // optional .CSGOInterpolationInfoPB sv_interp1 = 14;
  bool has_sv_interp1() const;
  private:
  bool _internal_has_sv_interp1() const;
  public:
  void clear_sv_interp1();
  const ::CSGOInterpolationInfoPB& sv_interp1() const;
  PROTOBUF_NODISCARD ::CSGOInterpolationInfoPB* release_sv_interp1();
  ::CSGOInterpolationInfoPB* mutable_sv_interp1();
  void set_allocated_sv_interp1(::CSGOInterpolationInfoPB* sv_interp1);
  private:
  const ::CSGOInterpolationInfoPB& _internal_sv_interp1() const;
  ::CSGOInterpolationInfoPB* _internal_mutable_sv_interp1();
  public:
  void unsafe_arena_set_allocated_sv_interp1(
      ::CSGOInterpolationInfoPB* sv_interp1);
  ::CSGOInterpolationInfoPB* unsafe_arena_release_sv_interp1();

  // optional .CSGOInterpolationInfoPB player_interp = 15;
  bool has_player_interp() const;
  private:
  bool _internal_has_player_interp() const;
  public:
  void clear_player_interp();
  const ::CSGOInterpolationInfoPB& player_interp() const;
  PROTOBUF_NODISCARD ::CSGOInterpolationInfoPB* release_player_interp();
  ::CSGOInterpolationInfoPB* mutable_player_interp();
  void set_allocated_player_interp(::CSGOInterpolationInfoPB* player_interp);
  private:
  const ::CSGOInterpolationInfoPB& _internal_player_interp() const;
  ::CSGOInterpolationInfoPB* _internal_mutable_player_interp();
  public:
  void unsafe_arena_set_allocated_player_interp(
      ::CSGOInterpolationInfoPB* player_interp);
  ::CSGOInterpolationInfoPB* unsafe_arena_release_player_interp();

  // optional .CMsgVector shoot_position = 66;
  bool has_shoot_position() const;
  private:
  bool _internal_has_shoot_position() const;
  public:
  void clear_shoot_position();
  const ::CMsgVector& shoot_position() const;
  PROTOBUF_NODISCARD ::CMsgVector* release_shoot_position();
  ::CMsgVector* mutable_shoot_position();
  void set_allocated_shoot_position(::CMsgVector* shoot_position);
  private:
  const ::CMsgVector& _internal_shoot_position() const;
  ::CMsgVector* _internal_mutable_shoot_position();
  public:
  void unsafe_arena_set_allocated_shoot_position(
      ::CMsgVector* shoot_position);
  ::CMsgVector* unsafe_arena_release_shoot_position();

  // optional .CMsgVector target_head_pos_check = 67;
  bool has_target_head_pos_check() const;
  private:
  bool _internal_has_target_head_pos_check() const;
  public:
  void clear_target_head_pos_check();
  const ::CMsgVector& target_head_pos_check() const;
  PROTOBUF_NODISCARD ::CMsgVector* release_target_head_pos_check();
  ::CMsgVector* mutable_target_head_pos_check();
  void set_allocated_target_head_pos_check(::CMsgVector* target_head_pos_check);
  private:
  const ::CMsgVector& _internal_target_head_pos_check() const;
  ::CMsgVector* _internal_mutable_target_head_pos_check();
  public:
  void unsafe_arena_set_allocated_target_head_pos_check(
      ::CMsgVector* target_head_pos_check);
  ::CMsgVector* unsafe_arena_release_target_head_pos_check();

  // optional .CMsgVector target_abs_pos_check = 68;
  bool has_target_abs_pos_check() const;
  private:
  bool _internal_has_target_abs_pos_check() const;
  public:
  void clear_target_abs_pos_check();
  const ::CMsgVector& target_abs_pos_check() const;
  PROTOBUF_NODISCARD ::CMsgVector* release_target_abs_pos_check();
  ::CMsgVector* mutable_target_abs_pos_check();
  void set_allocated_target_abs_pos_check(::CMsgVector* target_abs_pos_check);
  private:
  const ::CMsgVector& _internal_target_abs_pos_check() const;
  ::CMsgVector* _internal_mutable_target_abs_pos_check();
  public:
  void unsafe_arena_set_allocated_target_abs_pos_check(
      ::CMsgVector* target_abs_pos_check);
  ::CMsgVector* unsafe_arena_release_target_abs_pos_check();

  // optional .CMsgQAngle target_abs_ang_check = 69;
  bool has_target_abs_ang_check() const;
  private:
  bool _internal_has_target_abs_ang_check() const;
  public:
  void clear_target_abs_ang_check();
  const ::CMsgQAngle& target_abs_ang_check() const;
  PROTOBUF_NODISCARD ::CMsgQAngle* release_target_abs_ang_check();
  ::CMsgQAngle* mutable_target_abs_ang_check();
  void set_allocated_target_abs_ang_check(::CMsgQAngle* target_abs_ang_check);
  private:
  const ::CMsgQAngle& _internal_target_abs_ang_check() const;
  ::CMsgQAngle* _internal_mutable_target_abs_ang_check();
  public:
  void unsafe_arena_set_allocated_target_abs_ang_check(
      ::CMsgQAngle* target_abs_ang_check);
  ::CMsgQAngle* unsafe_arena_release_target_abs_ang_check();

  // optional int32 render_tick_count = 4;
  bool has_render_tick_count() const;
  private:
  bool _internal_has_render_tick_count() const;
  public:
  void clear_render_tick_count();
  int32_t render_tick_count() const;
  void set_render_tick_count(int32_t value);
  private:
  int32_t _internal_render_tick_count() const;
  void _internal_set_render_tick_count(int32_t value);
  public:

  // optional float render_tick_fraction = 5;
  bool has_render_tick_fraction() const;
  private:
  bool _internal_has_render_tick_fraction() const;
  public:
  void clear_render_tick_fraction();
  float render_tick_fraction() const;
  void set_render_tick_fraction(float value);
  private:
  float _internal_render_tick_fraction() const;
  void _internal_set_render_tick_fraction(float value);
  public:

  // optional int32 player_tick_count = 6;
  bool has_player_tick_count() const;
  private:
  bool _internal_has_player_tick_count() const;
  public:
  void clear_player_tick_count();
  int32_t player_tick_count() const;
  void set_player_tick_count(int32_t value);
  private:
  int32_t _internal_player_tick_count() const;
  void _internal_set_player_tick_count(int32_t value);
  public:

  // optional float player_tick_fraction = 7;
  bool has_player_tick_fraction() const;
  private:
  bool _internal_has_player_tick_fraction() const;
  public:
  void clear_player_tick_fraction();
  float player_tick_fraction() const;
  void set_player_tick_fraction(float value);
  private:
  float _internal_player_tick_fraction() const;
  void _internal_set_player_tick_fraction(float value);
  public:

  // optional int32 frame_number = 64;
  bool has_frame_number() const;
  private:
  bool _internal_has_frame_number() const;
  public:
  void clear_frame_number();
  int32_t frame_number() const;
  void set_frame_number(int32_t value);
  private:
  int32_t _internal_frame_number() const;
  void _internal_set_frame_number(int32_t value);
  public:

  // optional int32 target_ent_index = 65 [default = -1];
  bool has_target_ent_index() const;
  private:
  bool _internal_has_target_ent_index() const;
  public:
  void clear_target_ent_index();
  int32_t target_ent_index() const;
  void set_target_ent_index(int32_t value);
  private:
  int32_t _internal_target_ent_index() const;
  void _internal_set_target_ent_index(int32_t value);
  public:

  // @@protoc_insertion_point(class_scope:CSGOInputHistoryEntryPB)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::CMsgQAngle* view_angles_;
    ::CSGOInterpolationInfoPB_CL* cl_interp_;
    ::CSGOInterpolationInfoPB* sv_interp0_;
    ::CSGOInterpolationInfoPB* sv_interp1_;
    ::CSGOInterpolationInfoPB* player_interp_;
    ::CMsgVector* shoot_position_;
    ::CMsgVector* target_head_pos_check_;
    ::CMsgVector* target_abs_pos_check_;
    ::CMsgQAngle* target_abs_ang_check_;
    int32_t render_tick_count_;
    float render_tick_fraction_;
    int32_t player_tick_count_;
    float player_tick_fraction_;
    int32_t frame_number_;
    int32_t target_ent_index_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_cs_5fusercmd_2eproto;
};
// -------------------------------------------------------------------

class CSGOUserCmdPB final :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:CSGOUserCmdPB) */ {
 public:
  inline CSGOUserCmdPB() : CSGOUserCmdPB(nullptr) {}
  ~CSGOUserCmdPB() override;
  explicit PROTOBUF_CONSTEXPR CSGOUserCmdPB(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  CSGOUserCmdPB(const CSGOUserCmdPB& from);
  CSGOUserCmdPB(CSGOUserCmdPB&& from) noexcept
    : CSGOUserCmdPB() {
    *this = ::std::move(from);
  }

  inline CSGOUserCmdPB& operator=(const CSGOUserCmdPB& from) {
    CopyFrom(from);
    return *this;
  }
  inline CSGOUserCmdPB& operator=(CSGOUserCmdPB&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
  }
  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CSGOUserCmdPB& default_instance() {
    return *internal_default_instance();
  }
  static inline const CSGOUserCmdPB* internal_default_instance() {
    return reinterpret_cast<const CSGOUserCmdPB*>(
               &_CSGOUserCmdPB_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  friend void swap(CSGOUserCmdPB& a, CSGOUserCmdPB& b) {
    a.Swap(&b);
  }
  inline void Swap(CSGOUserCmdPB* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(CSGOUserCmdPB* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  CSGOUserCmdPB* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<CSGOUserCmdPB>(arena);
  }
  using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
  void CopyFrom(const CSGOUserCmdPB& from);
  using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
  void MergeFrom( const CSGOUserCmdPB& from) {
    CSGOUserCmdPB::MergeImpl(*this, from);
  }
  private:
  static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
  public:
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  uint8_t* _InternalSerialize(
      uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CSGOUserCmdPB* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "CSGOUserCmdPB";
  }
  protected:
  explicit CSGOUserCmdPB(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                       bool is_message_owned = false);
  public:

  static const ClassData _class_data_;
  const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kInputHistoryFieldNumber = 2,
    kBaseFieldNumber = 1,
    kLeftHandDesiredFieldNumber = 9,
    kIsPredictingBodyShotFxFieldNumber = 11,
    kIsPredictingHeadShotFxFieldNumber = 12,
    kIsPredictingKillRagdollsFieldNumber = 13,
    kAttack1StartHistoryIndexFieldNumber = 6,
    kAttack2StartHistoryIndexFieldNumber = 7,
  };
  // repeated .CSGOInputHistoryEntryPB input_history = 2;
  int input_history_size() const;
  private:
  int _internal_input_history_size() const;
  public:
  void clear_input_history();
  ::CSGOInputHistoryEntryPB* mutable_input_history(int index);
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::CSGOInputHistoryEntryPB >*
      mutable_input_history();
  private:
  const ::CSGOInputHistoryEntryPB& _internal_input_history(int index) const;
  ::CSGOInputHistoryEntryPB* _internal_add_input_history();
  public:
  const ::CSGOInputHistoryEntryPB& input_history(int index) const;
  ::CSGOInputHistoryEntryPB* add_input_history();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::CSGOInputHistoryEntryPB >&
      input_history() const;

  // optional .CBaseUserCmdPB base = 1;
  bool has_base() const;
  private:
  bool _internal_has_base() const;
  public:
  void clear_base();
  const ::CBaseUserCmdPB& base() const;
  PROTOBUF_NODISCARD ::CBaseUserCmdPB* release_base();
  ::CBaseUserCmdPB* mutable_base();
  void set_allocated_base(::CBaseUserCmdPB* base);
  private:
  const ::CBaseUserCmdPB& _internal_base() const;
  ::CBaseUserCmdPB* _internal_mutable_base();
  public:
  void unsafe_arena_set_allocated_base(
      ::CBaseUserCmdPB* base);
  ::CBaseUserCmdPB* unsafe_arena_release_base();

  // optional bool left_hand_desired = 9 [default = false];
  bool has_left_hand_desired() const;
  private:
  bool _internal_has_left_hand_desired() const;
  public:
  void clear_left_hand_desired();
  bool left_hand_desired() const;
  void set_left_hand_desired(bool value);
  private:
  bool _internal_left_hand_desired() const;
  void _internal_set_left_hand_desired(bool value);
  public:

  // optional bool is_predicting_body_shot_fx = 11 [default = false];
  bool has_is_predicting_body_shot_fx() const;
  private:
  bool _internal_has_is_predicting_body_shot_fx() const;
  public:
  void clear_is_predicting_body_shot_fx();
  bool is_predicting_body_shot_fx() const;
  void set_is_predicting_body_shot_fx(bool value);
  private:
  bool _internal_is_predicting_body_shot_fx() const;
  void _internal_set_is_predicting_body_shot_fx(bool value);
  public:

  // optional bool is_predicting_head_shot_fx = 12 [default = false];
  bool has_is_predicting_head_shot_fx() const;
  private:
  bool _internal_has_is_predicting_head_shot_fx() const;
  public:
  void clear_is_predicting_head_shot_fx();
  bool is_predicting_head_shot_fx() const;
  void set_is_predicting_head_shot_fx(bool value);
  private:
  bool _internal_is_predicting_head_shot_fx() const;
  void _internal_set_is_predicting_head_shot_fx(bool value);
  public:

  // optional bool is_predicting_kill_ragdolls = 13 [default = false];
  bool has_is_predicting_kill_ragdolls() const;
  private:
  bool _internal_has_is_predicting_kill_ragdolls() const;
  public:
  void clear_is_predicting_kill_ragdolls();
  bool is_predicting_kill_ragdolls() const;
  void set_is_predicting_kill_ragdolls(bool value);
  private:
  bool _internal_is_predicting_kill_ragdolls() const;
  void _internal_set_is_predicting_kill_ragdolls(bool value);
  public:

  // optional int32 attack1_start_history_index = 6 [default = -1];
  bool has_attack1_start_history_index() const;
  private:
  bool _internal_has_attack1_start_history_index() const;
  public:
  void clear_attack1_start_history_index();
  int32_t attack1_start_history_index() const;
  void set_attack1_start_history_index(int32_t value);
  private:
  int32_t _internal_attack1_start_history_index() const;
  void _internal_set_attack1_start_history_index(int32_t value);
  public:

  // optional int32 attack2_start_history_index = 7 [default = -1];
  bool has_attack2_start_history_index() const;
  private:
  bool _internal_has_attack2_start_history_index() const;
  public:
  void clear_attack2_start_history_index();
  int32_t attack2_start_history_index() const;
  void set_attack2_start_history_index(int32_t value);
  private:
  int32_t _internal_attack2_start_history_index() const;
  void _internal_set_attack2_start_history_index(int32_t value);
  public:

  // @@protoc_insertion_point(class_scope:CSGOUserCmdPB)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::CSGOInputHistoryEntryPB > input_history_;
    ::CBaseUserCmdPB* base_;
    bool left_hand_desired_;
    bool is_predicting_body_shot_fx_;
    bool is_predicting_head_shot_fx_;
    bool is_predicting_kill_ragdolls_;
    int32_t attack1_start_history_index_;
    int32_t attack2_start_history_index_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_cs_5fusercmd_2eproto;
};
// ===================================================================


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

#ifdef __GNUC__
  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// CSGOInterpolationInfoPB

// optional int32 src_tick = 1 [default = -1];
inline bool CSGOInterpolationInfoPB::_internal_has_src_tick() const {
  bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
  return value;
}
inline bool CSGOInterpolationInfoPB::has_src_tick() const {
  return _internal_has_src_tick();
}
inline void CSGOInterpolationInfoPB::clear_src_tick() {
  _impl_.src_tick_ = -1;
  _impl_._has_bits_[0] &= ~0x00000002u;
}
inline int32_t CSGOInterpolationInfoPB::_internal_src_tick() const {
  return _impl_.src_tick_;
}
inline int32_t CSGOInterpolationInfoPB::src_tick() const {
  // @@protoc_insertion_point(field_get:CSGOInterpolationInfoPB.src_tick)
  return _internal_src_tick();
}
inline void CSGOInterpolationInfoPB::_internal_set_src_tick(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000002u;
  _impl_.src_tick_ = value;
}
inline void CSGOInterpolationInfoPB::set_src_tick(int32_t value) {
  _internal_set_src_tick(value);
  // @@protoc_insertion_point(field_set:CSGOInterpolationInfoPB.src_tick)
}

// optional int32 dst_tick = 2 [default = -1];
inline bool CSGOInterpolationInfoPB::_internal_has_dst_tick() const {
  bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
  return value;
}
inline bool CSGOInterpolationInfoPB::has_dst_tick() const {
  return _internal_has_dst_tick();
}
inline void CSGOInterpolationInfoPB::clear_dst_tick() {
  _impl_.dst_tick_ = -1;
  _impl_._has_bits_[0] &= ~0x00000004u;
}
inline int32_t CSGOInterpolationInfoPB::_internal_dst_tick() const {
  return _impl_.dst_tick_;
}
inline int32_t CSGOInterpolationInfoPB::dst_tick() const {
  // @@protoc_insertion_point(field_get:CSGOInterpolationInfoPB.dst_tick)
  return _internal_dst_tick();
}
inline void CSGOInterpolationInfoPB::_internal_set_dst_tick(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000004u;
  _impl_.dst_tick_ = value;
}
inline void CSGOInterpolationInfoPB::set_dst_tick(int32_t value) {
  _internal_set_dst_tick(value);
  // @@protoc_insertion_point(field_set:CSGOInterpolationInfoPB.dst_tick)
}

// optional float frac = 3 [default = 0];
inline bool CSGOInterpolationInfoPB::_internal_has_frac() const {
  bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
  return value;
}
inline bool CSGOInterpolationInfoPB::has_frac() const {
  return _internal_has_frac();
}
inline void CSGOInterpolationInfoPB::clear_frac() {
  _impl_.frac_ = 0;
  _impl_._has_bits_[0] &= ~0x00000001u;
}
inline float CSGOInterpolationInfoPB::_internal_frac() const {
  return _impl_.frac_;
}
inline float CSGOInterpolationInfoPB::frac() const {
  // @@protoc_insertion_point(field_get:CSGOInterpolationInfoPB.frac)
  return _internal_frac();
}
inline void CSGOInterpolationInfoPB::_internal_set_frac(float value) {
  _impl_._has_bits_[0] |= 0x00000001u;
  _impl_.frac_ = value;
}
inline void CSGOInterpolationInfoPB::set_frac(float value) {
  _internal_set_frac(value);
  // @@protoc_insertion_point(field_set:CSGOInterpolationInfoPB.frac)
}

// -------------------------------------------------------------------

// CSGOInterpolationInfoPB_CL

// optional float frac = 3 [default = 0];
inline bool CSGOInterpolationInfoPB_CL::_internal_has_frac() const {
  bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
  return value;
}
inline bool CSGOInterpolationInfoPB_CL::has_frac() const {
  return _internal_has_frac();
}
inline void CSGOInterpolationInfoPB_CL::clear_frac() {
  _impl_.frac_ = 0;
  _impl_._has_bits_[0] &= ~0x00000001u;
}
inline float CSGOInterpolationInfoPB_CL::_internal_frac() const {
  return _impl_.frac_;
}
inline float CSGOInterpolationInfoPB_CL::frac() const {
  // @@protoc_insertion_point(field_get:CSGOInterpolationInfoPB_CL.frac)
  return _internal_frac();
}
inline void CSGOInterpolationInfoPB_CL::_internal_set_frac(float value) {
  _impl_._has_bits_[0] |= 0x00000001u;
  _impl_.frac_ = value;
}
inline void CSGOInterpolationInfoPB_CL::set_frac(float value) {
  _internal_set_frac(value);
  // @@protoc_insertion_point(field_set:CSGOInterpolationInfoPB_CL.frac)
}

// -------------------------------------------------------------------

// CSGOInputHistoryEntryPB

// optional .CMsgQAngle view_angles = 2;
inline bool CSGOInputHistoryEntryPB::_internal_has_view_angles() const {
  bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.view_angles_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_view_angles() const {
  return _internal_has_view_angles();
}
inline const ::CMsgQAngle& CSGOInputHistoryEntryPB::_internal_view_angles() const {
  const ::CMsgQAngle* p = _impl_.view_angles_;
  return p != nullptr ? *p : reinterpret_cast<const ::CMsgQAngle&>(
      ::_CMsgQAngle_default_instance_);
}
inline const ::CMsgQAngle& CSGOInputHistoryEntryPB::view_angles() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.view_angles)
  return _internal_view_angles();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_view_angles(
    ::CMsgQAngle* view_angles) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.view_angles_);
  }
  _impl_.view_angles_ = view_angles;
  if (view_angles) {
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.view_angles)
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::release_view_angles() {
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::CMsgQAngle* temp = _impl_.view_angles_;
  _impl_.view_angles_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::unsafe_arena_release_view_angles() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.view_angles)
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::CMsgQAngle* temp = _impl_.view_angles_;
  _impl_.view_angles_ = nullptr;
  return temp;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::_internal_mutable_view_angles() {
  _impl_._has_bits_[0] |= 0x00000001u;
  if (_impl_.view_angles_ == nullptr) {
    auto* p = CreateMaybeMessage<::CMsgQAngle>(GetArenaForAllocation());
    _impl_.view_angles_ = p;
  }
  return _impl_.view_angles_;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::mutable_view_angles() {
  ::CMsgQAngle* _msg = _internal_mutable_view_angles();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.view_angles)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_view_angles(::CMsgQAngle* view_angles) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.view_angles_);
  }
  if (view_angles) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(view_angles));
    if (message_arena != submessage_arena) {
      view_angles = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, view_angles, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  _impl_.view_angles_ = view_angles;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.view_angles)
}

// optional int32 render_tick_count = 4;
inline bool CSGOInputHistoryEntryPB::_internal_has_render_tick_count() const {
  bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_render_tick_count() const {
  return _internal_has_render_tick_count();
}
inline void CSGOInputHistoryEntryPB::clear_render_tick_count() {
  _impl_.render_tick_count_ = 0;
  _impl_._has_bits_[0] &= ~0x00000200u;
}
inline int32_t CSGOInputHistoryEntryPB::_internal_render_tick_count() const {
  return _impl_.render_tick_count_;
}
inline int32_t CSGOInputHistoryEntryPB::render_tick_count() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.render_tick_count)
  return _internal_render_tick_count();
}
inline void CSGOInputHistoryEntryPB::_internal_set_render_tick_count(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000200u;
  _impl_.render_tick_count_ = value;
}
inline void CSGOInputHistoryEntryPB::set_render_tick_count(int32_t value) {
  _internal_set_render_tick_count(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.render_tick_count)
}

// optional float render_tick_fraction = 5;
inline bool CSGOInputHistoryEntryPB::_internal_has_render_tick_fraction() const {
  bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_render_tick_fraction() const {
  return _internal_has_render_tick_fraction();
}
inline void CSGOInputHistoryEntryPB::clear_render_tick_fraction() {
  _impl_.render_tick_fraction_ = 0;
  _impl_._has_bits_[0] &= ~0x00000400u;
}
inline float CSGOInputHistoryEntryPB::_internal_render_tick_fraction() const {
  return _impl_.render_tick_fraction_;
}
inline float CSGOInputHistoryEntryPB::render_tick_fraction() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.render_tick_fraction)
  return _internal_render_tick_fraction();
}
inline void CSGOInputHistoryEntryPB::_internal_set_render_tick_fraction(float value) {
  _impl_._has_bits_[0] |= 0x00000400u;
  _impl_.render_tick_fraction_ = value;
}
inline void CSGOInputHistoryEntryPB::set_render_tick_fraction(float value) {
  _internal_set_render_tick_fraction(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.render_tick_fraction)
}

// optional int32 player_tick_count = 6;
inline bool CSGOInputHistoryEntryPB::_internal_has_player_tick_count() const {
  bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_player_tick_count() const {
  return _internal_has_player_tick_count();
}
inline void CSGOInputHistoryEntryPB::clear_player_tick_count() {
  _impl_.player_tick_count_ = 0;
  _impl_._has_bits_[0] &= ~0x00000800u;
}
inline int32_t CSGOInputHistoryEntryPB::_internal_player_tick_count() const {
  return _impl_.player_tick_count_;
}
inline int32_t CSGOInputHistoryEntryPB::player_tick_count() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.player_tick_count)
  return _internal_player_tick_count();
}
inline void CSGOInputHistoryEntryPB::_internal_set_player_tick_count(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000800u;
  _impl_.player_tick_count_ = value;
}
inline void CSGOInputHistoryEntryPB::set_player_tick_count(int32_t value) {
  _internal_set_player_tick_count(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.player_tick_count)
}

// optional float player_tick_fraction = 7;
inline bool CSGOInputHistoryEntryPB::_internal_has_player_tick_fraction() const {
  bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_player_tick_fraction() const {
  return _internal_has_player_tick_fraction();
}
inline void CSGOInputHistoryEntryPB::clear_player_tick_fraction() {
  _impl_.player_tick_fraction_ = 0;
  _impl_._has_bits_[0] &= ~0x00001000u;
}
inline float CSGOInputHistoryEntryPB::_internal_player_tick_fraction() const {
  return _impl_.player_tick_fraction_;
}
inline float CSGOInputHistoryEntryPB::player_tick_fraction() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.player_tick_fraction)
  return _internal_player_tick_fraction();
}
inline void CSGOInputHistoryEntryPB::_internal_set_player_tick_fraction(float value) {
  _impl_._has_bits_[0] |= 0x00001000u;
  _impl_.player_tick_fraction_ = value;
}
inline void CSGOInputHistoryEntryPB::set_player_tick_fraction(float value) {
  _internal_set_player_tick_fraction(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.player_tick_fraction)
}

// optional .CSGOInterpolationInfoPB_CL cl_interp = 12;
inline bool CSGOInputHistoryEntryPB::_internal_has_cl_interp() const {
  bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.cl_interp_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_cl_interp() const {
  return _internal_has_cl_interp();
}
inline void CSGOInputHistoryEntryPB::clear_cl_interp() {
  if (_impl_.cl_interp_ != nullptr) _impl_.cl_interp_->Clear();
  _impl_._has_bits_[0] &= ~0x00000002u;
}
inline const ::CSGOInterpolationInfoPB_CL& CSGOInputHistoryEntryPB::_internal_cl_interp() const {
  const ::CSGOInterpolationInfoPB_CL* p = _impl_.cl_interp_;
  return p != nullptr ? *p : reinterpret_cast<const ::CSGOInterpolationInfoPB_CL&>(
      ::_CSGOInterpolationInfoPB_CL_default_instance_);
}
inline const ::CSGOInterpolationInfoPB_CL& CSGOInputHistoryEntryPB::cl_interp() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.cl_interp)
  return _internal_cl_interp();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_cl_interp(
    ::CSGOInterpolationInfoPB_CL* cl_interp) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cl_interp_);
  }
  _impl_.cl_interp_ = cl_interp;
  if (cl_interp) {
    _impl_._has_bits_[0] |= 0x00000002u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000002u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.cl_interp)
}
inline ::CSGOInterpolationInfoPB_CL* CSGOInputHistoryEntryPB::release_cl_interp() {
  _impl_._has_bits_[0] &= ~0x00000002u;
  ::CSGOInterpolationInfoPB_CL* temp = _impl_.cl_interp_;
  _impl_.cl_interp_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CSGOInterpolationInfoPB_CL* CSGOInputHistoryEntryPB::unsafe_arena_release_cl_interp() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.cl_interp)
  _impl_._has_bits_[0] &= ~0x00000002u;
  ::CSGOInterpolationInfoPB_CL* temp = _impl_.cl_interp_;
  _impl_.cl_interp_ = nullptr;
  return temp;
}
inline ::CSGOInterpolationInfoPB_CL* CSGOInputHistoryEntryPB::_internal_mutable_cl_interp() {
  _impl_._has_bits_[0] |= 0x00000002u;
  if (_impl_.cl_interp_ == nullptr) {
    auto* p = CreateMaybeMessage<::CSGOInterpolationInfoPB_CL>(GetArenaForAllocation());
    _impl_.cl_interp_ = p;
  }
  return _impl_.cl_interp_;
}
inline ::CSGOInterpolationInfoPB_CL* CSGOInputHistoryEntryPB::mutable_cl_interp() {
  ::CSGOInterpolationInfoPB_CL* _msg = _internal_mutable_cl_interp();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.cl_interp)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_cl_interp(::CSGOInterpolationInfoPB_CL* cl_interp) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete _impl_.cl_interp_;
  }
  if (cl_interp) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cl_interp);
    if (message_arena != submessage_arena) {
      cl_interp = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, cl_interp, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000002u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000002u;
  }
  _impl_.cl_interp_ = cl_interp;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.cl_interp)
}

// optional .CSGOInterpolationInfoPB sv_interp0 = 13;
inline bool CSGOInputHistoryEntryPB::_internal_has_sv_interp0() const {
  bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.sv_interp0_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_sv_interp0() const {
  return _internal_has_sv_interp0();
}
inline void CSGOInputHistoryEntryPB::clear_sv_interp0() {
  if (_impl_.sv_interp0_ != nullptr) _impl_.sv_interp0_->Clear();
  _impl_._has_bits_[0] &= ~0x00000004u;
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::_internal_sv_interp0() const {
  const ::CSGOInterpolationInfoPB* p = _impl_.sv_interp0_;
  return p != nullptr ? *p : reinterpret_cast<const ::CSGOInterpolationInfoPB&>(
      ::_CSGOInterpolationInfoPB_default_instance_);
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::sv_interp0() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.sv_interp0)
  return _internal_sv_interp0();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_sv_interp0(
    ::CSGOInterpolationInfoPB* sv_interp0) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sv_interp0_);
  }
  _impl_.sv_interp0_ = sv_interp0;
  if (sv_interp0) {
    _impl_._has_bits_[0] |= 0x00000004u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000004u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.sv_interp0)
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::release_sv_interp0() {
  _impl_._has_bits_[0] &= ~0x00000004u;
  ::CSGOInterpolationInfoPB* temp = _impl_.sv_interp0_;
  _impl_.sv_interp0_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::unsafe_arena_release_sv_interp0() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.sv_interp0)
  _impl_._has_bits_[0] &= ~0x00000004u;
  ::CSGOInterpolationInfoPB* temp = _impl_.sv_interp0_;
  _impl_.sv_interp0_ = nullptr;
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::_internal_mutable_sv_interp0() {
  _impl_._has_bits_[0] |= 0x00000004u;
  if (_impl_.sv_interp0_ == nullptr) {
    auto* p = CreateMaybeMessage<::CSGOInterpolationInfoPB>(GetArenaForAllocation());
    _impl_.sv_interp0_ = p;
  }
  return _impl_.sv_interp0_;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::mutable_sv_interp0() {
  ::CSGOInterpolationInfoPB* _msg = _internal_mutable_sv_interp0();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.sv_interp0)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_sv_interp0(::CSGOInterpolationInfoPB* sv_interp0) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete _impl_.sv_interp0_;
  }
  if (sv_interp0) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sv_interp0);
    if (message_arena != submessage_arena) {
      sv_interp0 = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, sv_interp0, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000004u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000004u;
  }
  _impl_.sv_interp0_ = sv_interp0;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.sv_interp0)
}

// optional .CSGOInterpolationInfoPB sv_interp1 = 14;
inline bool CSGOInputHistoryEntryPB::_internal_has_sv_interp1() const {
  bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.sv_interp1_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_sv_interp1() const {
  return _internal_has_sv_interp1();
}
inline void CSGOInputHistoryEntryPB::clear_sv_interp1() {
  if (_impl_.sv_interp1_ != nullptr) _impl_.sv_interp1_->Clear();
  _impl_._has_bits_[0] &= ~0x00000008u;
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::_internal_sv_interp1() const {
  const ::CSGOInterpolationInfoPB* p = _impl_.sv_interp1_;
  return p != nullptr ? *p : reinterpret_cast<const ::CSGOInterpolationInfoPB&>(
      ::_CSGOInterpolationInfoPB_default_instance_);
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::sv_interp1() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.sv_interp1)
  return _internal_sv_interp1();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_sv_interp1(
    ::CSGOInterpolationInfoPB* sv_interp1) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sv_interp1_);
  }
  _impl_.sv_interp1_ = sv_interp1;
  if (sv_interp1) {
    _impl_._has_bits_[0] |= 0x00000008u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000008u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.sv_interp1)
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::release_sv_interp1() {
  _impl_._has_bits_[0] &= ~0x00000008u;
  ::CSGOInterpolationInfoPB* temp = _impl_.sv_interp1_;
  _impl_.sv_interp1_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::unsafe_arena_release_sv_interp1() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.sv_interp1)
  _impl_._has_bits_[0] &= ~0x00000008u;
  ::CSGOInterpolationInfoPB* temp = _impl_.sv_interp1_;
  _impl_.sv_interp1_ = nullptr;
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::_internal_mutable_sv_interp1() {
  _impl_._has_bits_[0] |= 0x00000008u;
  if (_impl_.sv_interp1_ == nullptr) {
    auto* p = CreateMaybeMessage<::CSGOInterpolationInfoPB>(GetArenaForAllocation());
    _impl_.sv_interp1_ = p;
  }
  return _impl_.sv_interp1_;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::mutable_sv_interp1() {
  ::CSGOInterpolationInfoPB* _msg = _internal_mutable_sv_interp1();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.sv_interp1)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_sv_interp1(::CSGOInterpolationInfoPB* sv_interp1) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete _impl_.sv_interp1_;
  }
  if (sv_interp1) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sv_interp1);
    if (message_arena != submessage_arena) {
      sv_interp1 = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, sv_interp1, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000008u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000008u;
  }
  _impl_.sv_interp1_ = sv_interp1;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.sv_interp1)
}

// optional .CSGOInterpolationInfoPB player_interp = 15;
inline bool CSGOInputHistoryEntryPB::_internal_has_player_interp() const {
  bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.player_interp_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_player_interp() const {
  return _internal_has_player_interp();
}
inline void CSGOInputHistoryEntryPB::clear_player_interp() {
  if (_impl_.player_interp_ != nullptr) _impl_.player_interp_->Clear();
  _impl_._has_bits_[0] &= ~0x00000010u;
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::_internal_player_interp() const {
  const ::CSGOInterpolationInfoPB* p = _impl_.player_interp_;
  return p != nullptr ? *p : reinterpret_cast<const ::CSGOInterpolationInfoPB&>(
      ::_CSGOInterpolationInfoPB_default_instance_);
}
inline const ::CSGOInterpolationInfoPB& CSGOInputHistoryEntryPB::player_interp() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.player_interp)
  return _internal_player_interp();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_player_interp(
    ::CSGOInterpolationInfoPB* player_interp) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.player_interp_);
  }
  _impl_.player_interp_ = player_interp;
  if (player_interp) {
    _impl_._has_bits_[0] |= 0x00000010u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000010u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.player_interp)
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::release_player_interp() {
  _impl_._has_bits_[0] &= ~0x00000010u;
  ::CSGOInterpolationInfoPB* temp = _impl_.player_interp_;
  _impl_.player_interp_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::unsafe_arena_release_player_interp() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.player_interp)
  _impl_._has_bits_[0] &= ~0x00000010u;
  ::CSGOInterpolationInfoPB* temp = _impl_.player_interp_;
  _impl_.player_interp_ = nullptr;
  return temp;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::_internal_mutable_player_interp() {
  _impl_._has_bits_[0] |= 0x00000010u;
  if (_impl_.player_interp_ == nullptr) {
    auto* p = CreateMaybeMessage<::CSGOInterpolationInfoPB>(GetArenaForAllocation());
    _impl_.player_interp_ = p;
  }
  return _impl_.player_interp_;
}
inline ::CSGOInterpolationInfoPB* CSGOInputHistoryEntryPB::mutable_player_interp() {
  ::CSGOInterpolationInfoPB* _msg = _internal_mutable_player_interp();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.player_interp)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_player_interp(::CSGOInterpolationInfoPB* player_interp) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete _impl_.player_interp_;
  }
  if (player_interp) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(player_interp);
    if (message_arena != submessage_arena) {
      player_interp = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, player_interp, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000010u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000010u;
  }
  _impl_.player_interp_ = player_interp;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.player_interp)
}

// optional int32 frame_number = 64;
inline bool CSGOInputHistoryEntryPB::_internal_has_frame_number() const {
  bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_frame_number() const {
  return _internal_has_frame_number();
}
inline void CSGOInputHistoryEntryPB::clear_frame_number() {
  _impl_.frame_number_ = 0;
  _impl_._has_bits_[0] &= ~0x00002000u;
}
inline int32_t CSGOInputHistoryEntryPB::_internal_frame_number() const {
  return _impl_.frame_number_;
}
inline int32_t CSGOInputHistoryEntryPB::frame_number() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.frame_number)
  return _internal_frame_number();
}
inline void CSGOInputHistoryEntryPB::_internal_set_frame_number(int32_t value) {
  _impl_._has_bits_[0] |= 0x00002000u;
  _impl_.frame_number_ = value;
}
inline void CSGOInputHistoryEntryPB::set_frame_number(int32_t value) {
  _internal_set_frame_number(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.frame_number)
}

// optional int32 target_ent_index = 65 [default = -1];
inline bool CSGOInputHistoryEntryPB::_internal_has_target_ent_index() const {
  bool value = (_impl_._has_bits_[0] & 0x00004000u) != 0;
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_target_ent_index() const {
  return _internal_has_target_ent_index();
}
inline void CSGOInputHistoryEntryPB::clear_target_ent_index() {
  _impl_.target_ent_index_ = -1;
  _impl_._has_bits_[0] &= ~0x00004000u;
}
inline int32_t CSGOInputHistoryEntryPB::_internal_target_ent_index() const {
  return _impl_.target_ent_index_;
}
inline int32_t CSGOInputHistoryEntryPB::target_ent_index() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.target_ent_index)
  return _internal_target_ent_index();
}
inline void CSGOInputHistoryEntryPB::_internal_set_target_ent_index(int32_t value) {
  _impl_._has_bits_[0] |= 0x00004000u;
  _impl_.target_ent_index_ = value;
}
inline void CSGOInputHistoryEntryPB::set_target_ent_index(int32_t value) {
  _internal_set_target_ent_index(value);
  // @@protoc_insertion_point(field_set:CSGOInputHistoryEntryPB.target_ent_index)
}

// optional .CMsgVector shoot_position = 66;
inline bool CSGOInputHistoryEntryPB::_internal_has_shoot_position() const {
  bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.shoot_position_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_shoot_position() const {
  return _internal_has_shoot_position();
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::_internal_shoot_position() const {
  const ::CMsgVector* p = _impl_.shoot_position_;
  return p != nullptr ? *p : reinterpret_cast<const ::CMsgVector&>(
      ::_CMsgVector_default_instance_);
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::shoot_position() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.shoot_position)
  return _internal_shoot_position();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_shoot_position(
    ::CMsgVector* shoot_position) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.shoot_position_);
  }
  _impl_.shoot_position_ = shoot_position;
  if (shoot_position) {
    _impl_._has_bits_[0] |= 0x00000020u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000020u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.shoot_position)
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::release_shoot_position() {
  _impl_._has_bits_[0] &= ~0x00000020u;
  ::CMsgVector* temp = _impl_.shoot_position_;
  _impl_.shoot_position_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::unsafe_arena_release_shoot_position() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.shoot_position)
  _impl_._has_bits_[0] &= ~0x00000020u;
  ::CMsgVector* temp = _impl_.shoot_position_;
  _impl_.shoot_position_ = nullptr;
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::_internal_mutable_shoot_position() {
  _impl_._has_bits_[0] |= 0x00000020u;
  if (_impl_.shoot_position_ == nullptr) {
    auto* p = CreateMaybeMessage<::CMsgVector>(GetArenaForAllocation());
    _impl_.shoot_position_ = p;
  }
  return _impl_.shoot_position_;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::mutable_shoot_position() {
  ::CMsgVector* _msg = _internal_mutable_shoot_position();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.shoot_position)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_shoot_position(::CMsgVector* shoot_position) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.shoot_position_);
  }
  if (shoot_position) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(shoot_position));
    if (message_arena != submessage_arena) {
      shoot_position = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, shoot_position, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000020u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000020u;
  }
  _impl_.shoot_position_ = shoot_position;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.shoot_position)
}

// optional .CMsgVector target_head_pos_check = 67;
inline bool CSGOInputHistoryEntryPB::_internal_has_target_head_pos_check() const {
  bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.target_head_pos_check_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_target_head_pos_check() const {
  return _internal_has_target_head_pos_check();
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::_internal_target_head_pos_check() const {
  const ::CMsgVector* p = _impl_.target_head_pos_check_;
  return p != nullptr ? *p : reinterpret_cast<const ::CMsgVector&>(
      ::_CMsgVector_default_instance_);
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::target_head_pos_check() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.target_head_pos_check)
  return _internal_target_head_pos_check();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_target_head_pos_check(
    ::CMsgVector* target_head_pos_check) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_head_pos_check_);
  }
  _impl_.target_head_pos_check_ = target_head_pos_check;
  if (target_head_pos_check) {
    _impl_._has_bits_[0] |= 0x00000040u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000040u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.target_head_pos_check)
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::release_target_head_pos_check() {
  _impl_._has_bits_[0] &= ~0x00000040u;
  ::CMsgVector* temp = _impl_.target_head_pos_check_;
  _impl_.target_head_pos_check_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::unsafe_arena_release_target_head_pos_check() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.target_head_pos_check)
  _impl_._has_bits_[0] &= ~0x00000040u;
  ::CMsgVector* temp = _impl_.target_head_pos_check_;
  _impl_.target_head_pos_check_ = nullptr;
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::_internal_mutable_target_head_pos_check() {
  _impl_._has_bits_[0] |= 0x00000040u;
  if (_impl_.target_head_pos_check_ == nullptr) {
    auto* p = CreateMaybeMessage<::CMsgVector>(GetArenaForAllocation());
    _impl_.target_head_pos_check_ = p;
  }
  return _impl_.target_head_pos_check_;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::mutable_target_head_pos_check() {
  ::CMsgVector* _msg = _internal_mutable_target_head_pos_check();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.target_head_pos_check)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_target_head_pos_check(::CMsgVector* target_head_pos_check) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_head_pos_check_);
  }
  if (target_head_pos_check) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(target_head_pos_check));
    if (message_arena != submessage_arena) {
      target_head_pos_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, target_head_pos_check, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000040u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000040u;
  }
  _impl_.target_head_pos_check_ = target_head_pos_check;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.target_head_pos_check)
}

// optional .CMsgVector target_abs_pos_check = 68;
inline bool CSGOInputHistoryEntryPB::_internal_has_target_abs_pos_check() const {
  bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.target_abs_pos_check_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_target_abs_pos_check() const {
  return _internal_has_target_abs_pos_check();
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::_internal_target_abs_pos_check() const {
  const ::CMsgVector* p = _impl_.target_abs_pos_check_;
  return p != nullptr ? *p : reinterpret_cast<const ::CMsgVector&>(
      ::_CMsgVector_default_instance_);
}
inline const ::CMsgVector& CSGOInputHistoryEntryPB::target_abs_pos_check() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.target_abs_pos_check)
  return _internal_target_abs_pos_check();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_target_abs_pos_check(
    ::CMsgVector* target_abs_pos_check) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_abs_pos_check_);
  }
  _impl_.target_abs_pos_check_ = target_abs_pos_check;
  if (target_abs_pos_check) {
    _impl_._has_bits_[0] |= 0x00000080u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000080u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.target_abs_pos_check)
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::release_target_abs_pos_check() {
  _impl_._has_bits_[0] &= ~0x00000080u;
  ::CMsgVector* temp = _impl_.target_abs_pos_check_;
  _impl_.target_abs_pos_check_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::unsafe_arena_release_target_abs_pos_check() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.target_abs_pos_check)
  _impl_._has_bits_[0] &= ~0x00000080u;
  ::CMsgVector* temp = _impl_.target_abs_pos_check_;
  _impl_.target_abs_pos_check_ = nullptr;
  return temp;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::_internal_mutable_target_abs_pos_check() {
  _impl_._has_bits_[0] |= 0x00000080u;
  if (_impl_.target_abs_pos_check_ == nullptr) {
    auto* p = CreateMaybeMessage<::CMsgVector>(GetArenaForAllocation());
    _impl_.target_abs_pos_check_ = p;
  }
  return _impl_.target_abs_pos_check_;
}
inline ::CMsgVector* CSGOInputHistoryEntryPB::mutable_target_abs_pos_check() {
  ::CMsgVector* _msg = _internal_mutable_target_abs_pos_check();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.target_abs_pos_check)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_target_abs_pos_check(::CMsgVector* target_abs_pos_check) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_abs_pos_check_);
  }
  if (target_abs_pos_check) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(target_abs_pos_check));
    if (message_arena != submessage_arena) {
      target_abs_pos_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, target_abs_pos_check, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000080u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000080u;
  }
  _impl_.target_abs_pos_check_ = target_abs_pos_check;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.target_abs_pos_check)
}

// optional .CMsgQAngle target_abs_ang_check = 69;
inline bool CSGOInputHistoryEntryPB::_internal_has_target_abs_ang_check() const {
  bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.target_abs_ang_check_ != nullptr);
  return value;
}
inline bool CSGOInputHistoryEntryPB::has_target_abs_ang_check() const {
  return _internal_has_target_abs_ang_check();
}
inline const ::CMsgQAngle& CSGOInputHistoryEntryPB::_internal_target_abs_ang_check() const {
  const ::CMsgQAngle* p = _impl_.target_abs_ang_check_;
  return p != nullptr ? *p : reinterpret_cast<const ::CMsgQAngle&>(
      ::_CMsgQAngle_default_instance_);
}
inline const ::CMsgQAngle& CSGOInputHistoryEntryPB::target_abs_ang_check() const {
  // @@protoc_insertion_point(field_get:CSGOInputHistoryEntryPB.target_abs_ang_check)
  return _internal_target_abs_ang_check();
}
inline void CSGOInputHistoryEntryPB::unsafe_arena_set_allocated_target_abs_ang_check(
    ::CMsgQAngle* target_abs_ang_check) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_abs_ang_check_);
  }
  _impl_.target_abs_ang_check_ = target_abs_ang_check;
  if (target_abs_ang_check) {
    _impl_._has_bits_[0] |= 0x00000100u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000100u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOInputHistoryEntryPB.target_abs_ang_check)
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::release_target_abs_ang_check() {
  _impl_._has_bits_[0] &= ~0x00000100u;
  ::CMsgQAngle* temp = _impl_.target_abs_ang_check_;
  _impl_.target_abs_ang_check_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::unsafe_arena_release_target_abs_ang_check() {
  // @@protoc_insertion_point(field_release:CSGOInputHistoryEntryPB.target_abs_ang_check)
  _impl_._has_bits_[0] &= ~0x00000100u;
  ::CMsgQAngle* temp = _impl_.target_abs_ang_check_;
  _impl_.target_abs_ang_check_ = nullptr;
  return temp;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::_internal_mutable_target_abs_ang_check() {
  _impl_._has_bits_[0] |= 0x00000100u;
  if (_impl_.target_abs_ang_check_ == nullptr) {
    auto* p = CreateMaybeMessage<::CMsgQAngle>(GetArenaForAllocation());
    _impl_.target_abs_ang_check_ = p;
  }
  return _impl_.target_abs_ang_check_;
}
inline ::CMsgQAngle* CSGOInputHistoryEntryPB::mutable_target_abs_ang_check() {
  ::CMsgQAngle* _msg = _internal_mutable_target_abs_ang_check();
  // @@protoc_insertion_point(field_mutable:CSGOInputHistoryEntryPB.target_abs_ang_check)
  return _msg;
}
inline void CSGOInputHistoryEntryPB::set_allocated_target_abs_ang_check(::CMsgQAngle* target_abs_ang_check) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.target_abs_ang_check_);
  }
  if (target_abs_ang_check) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(target_abs_ang_check));
    if (message_arena != submessage_arena) {
      target_abs_ang_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, target_abs_ang_check, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000100u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000100u;
  }
  _impl_.target_abs_ang_check_ = target_abs_ang_check;
  // @@protoc_insertion_point(field_set_allocated:CSGOInputHistoryEntryPB.target_abs_ang_check)
}

// -------------------------------------------------------------------

// CSGOUserCmdPB

// optional .CBaseUserCmdPB base = 1;
inline bool CSGOUserCmdPB::_internal_has_base() const {
  bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.base_ != nullptr);
  return value;
}
inline bool CSGOUserCmdPB::has_base() const {
  return _internal_has_base();
}
inline const ::CBaseUserCmdPB& CSGOUserCmdPB::_internal_base() const {
  const ::CBaseUserCmdPB* p = _impl_.base_;
  return p != nullptr ? *p : reinterpret_cast<const ::CBaseUserCmdPB&>(
      ::_CBaseUserCmdPB_default_instance_);
}
inline const ::CBaseUserCmdPB& CSGOUserCmdPB::base() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.base)
  return _internal_base();
}
inline void CSGOUserCmdPB::unsafe_arena_set_allocated_base(
    ::CBaseUserCmdPB* base) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.base_);
  }
  _impl_.base_ = base;
  if (base) {
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:CSGOUserCmdPB.base)
}
inline ::CBaseUserCmdPB* CSGOUserCmdPB::release_base() {
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::CBaseUserCmdPB* temp = _impl_.base_;
  _impl_.base_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::CBaseUserCmdPB* CSGOUserCmdPB::unsafe_arena_release_base() {
  // @@protoc_insertion_point(field_release:CSGOUserCmdPB.base)
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::CBaseUserCmdPB* temp = _impl_.base_;
  _impl_.base_ = nullptr;
  return temp;
}
inline ::CBaseUserCmdPB* CSGOUserCmdPB::_internal_mutable_base() {
  _impl_._has_bits_[0] |= 0x00000001u;
  if (_impl_.base_ == nullptr) {
    auto* p = CreateMaybeMessage<::CBaseUserCmdPB>(GetArenaForAllocation());
    _impl_.base_ = p;
  }
  return _impl_.base_;
}
inline ::CBaseUserCmdPB* CSGOUserCmdPB::mutable_base() {
  ::CBaseUserCmdPB* _msg = _internal_mutable_base();
  // @@protoc_insertion_point(field_mutable:CSGOUserCmdPB.base)
  return _msg;
}
inline void CSGOUserCmdPB::set_allocated_base(::CBaseUserCmdPB* base) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.base_);
  }
  if (base) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(base));
    if (message_arena != submessage_arena) {
      base = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, base, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  _impl_.base_ = base;
  // @@protoc_insertion_point(field_set_allocated:CSGOUserCmdPB.base)
}

// repeated .CSGOInputHistoryEntryPB input_history = 2;
inline int CSGOUserCmdPB::_internal_input_history_size() const {
  return _impl_.input_history_.size();
}
inline int CSGOUserCmdPB::input_history_size() const {
  return _internal_input_history_size();
}
inline void CSGOUserCmdPB::clear_input_history() {
  _impl_.input_history_.Clear();
}
inline ::CSGOInputHistoryEntryPB* CSGOUserCmdPB::mutable_input_history(int index) {
  // @@protoc_insertion_point(field_mutable:CSGOUserCmdPB.input_history)
  return _impl_.input_history_.Mutable(index);
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::CSGOInputHistoryEntryPB >*
CSGOUserCmdPB::mutable_input_history() {
  // @@protoc_insertion_point(field_mutable_list:CSGOUserCmdPB.input_history)
  return &_impl_.input_history_;
}
inline const ::CSGOInputHistoryEntryPB& CSGOUserCmdPB::_internal_input_history(int index) const {
  return _impl_.input_history_.Get(index);
}
inline const ::CSGOInputHistoryEntryPB& CSGOUserCmdPB::input_history(int index) const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.input_history)
  return _internal_input_history(index);
}
inline ::CSGOInputHistoryEntryPB* CSGOUserCmdPB::_internal_add_input_history() {
  return _impl_.input_history_.Add();
}
inline ::CSGOInputHistoryEntryPB* CSGOUserCmdPB::add_input_history() {
  ::CSGOInputHistoryEntryPB* _add = _internal_add_input_history();
  // @@protoc_insertion_point(field_add:CSGOUserCmdPB.input_history)
  return _add;
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::CSGOInputHistoryEntryPB >&
CSGOUserCmdPB::input_history() const {
  // @@protoc_insertion_point(field_list:CSGOUserCmdPB.input_history)
  return _impl_.input_history_;
}

// optional int32 attack1_start_history_index = 6 [default = -1];
inline bool CSGOUserCmdPB::_internal_has_attack1_start_history_index() const {
  bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_attack1_start_history_index() const {
  return _internal_has_attack1_start_history_index();
}
inline void CSGOUserCmdPB::clear_attack1_start_history_index() {
  _impl_.attack1_start_history_index_ = -1;
  _impl_._has_bits_[0] &= ~0x00000020u;
}
inline int32_t CSGOUserCmdPB::_internal_attack1_start_history_index() const {
  return _impl_.attack1_start_history_index_;
}
inline int32_t CSGOUserCmdPB::attack1_start_history_index() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.attack1_start_history_index)
  return _internal_attack1_start_history_index();
}
inline void CSGOUserCmdPB::_internal_set_attack1_start_history_index(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000020u;
  _impl_.attack1_start_history_index_ = value;
}
inline void CSGOUserCmdPB::set_attack1_start_history_index(int32_t value) {
  _internal_set_attack1_start_history_index(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.attack1_start_history_index)
}

// optional int32 attack2_start_history_index = 7 [default = -1];
inline bool CSGOUserCmdPB::_internal_has_attack2_start_history_index() const {
  bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_attack2_start_history_index() const {
  return _internal_has_attack2_start_history_index();
}
inline void CSGOUserCmdPB::clear_attack2_start_history_index() {
  _impl_.attack2_start_history_index_ = -1;
  _impl_._has_bits_[0] &= ~0x00000040u;
}
inline int32_t CSGOUserCmdPB::_internal_attack2_start_history_index() const {
  return _impl_.attack2_start_history_index_;
}
inline int32_t CSGOUserCmdPB::attack2_start_history_index() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.attack2_start_history_index)
  return _internal_attack2_start_history_index();
}
inline void CSGOUserCmdPB::_internal_set_attack2_start_history_index(int32_t value) {
  _impl_._has_bits_[0] |= 0x00000040u;
  _impl_.attack2_start_history_index_ = value;
}
inline void CSGOUserCmdPB::set_attack2_start_history_index(int32_t value) {
  _internal_set_attack2_start_history_index(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.attack2_start_history_index)
}

// optional bool left_hand_desired = 9 [default = false];
inline bool CSGOUserCmdPB::_internal_has_left_hand_desired() const {
  bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_left_hand_desired() const {
  return _internal_has_left_hand_desired();
}
inline void CSGOUserCmdPB::clear_left_hand_desired() {
  _impl_.left_hand_desired_ = false;
  _impl_._has_bits_[0] &= ~0x00000002u;
}
inline bool CSGOUserCmdPB::_internal_left_hand_desired() const {
  return _impl_.left_hand_desired_;
}
inline bool CSGOUserCmdPB::left_hand_desired() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.left_hand_desired)
  return _internal_left_hand_desired();
}
inline void CSGOUserCmdPB::_internal_set_left_hand_desired(bool value) {
  _impl_._has_bits_[0] |= 0x00000002u;
  _impl_.left_hand_desired_ = value;
}
inline void CSGOUserCmdPB::set_left_hand_desired(bool value) {
  _internal_set_left_hand_desired(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.left_hand_desired)
}

// optional bool is_predicting_body_shot_fx = 11 [default = false];
inline bool CSGOUserCmdPB::_internal_has_is_predicting_body_shot_fx() const {
  bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_is_predicting_body_shot_fx() const {
  return _internal_has_is_predicting_body_shot_fx();
}
inline void CSGOUserCmdPB::clear_is_predicting_body_shot_fx() {
  _impl_.is_predicting_body_shot_fx_ = false;
  _impl_._has_bits_[0] &= ~0x00000004u;
}
inline bool CSGOUserCmdPB::_internal_is_predicting_body_shot_fx() const {
  return _impl_.is_predicting_body_shot_fx_;
}
inline bool CSGOUserCmdPB::is_predicting_body_shot_fx() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.is_predicting_body_shot_fx)
  return _internal_is_predicting_body_shot_fx();
}
inline void CSGOUserCmdPB::_internal_set_is_predicting_body_shot_fx(bool value) {
  _impl_._has_bits_[0] |= 0x00000004u;
  _impl_.is_predicting_body_shot_fx_ = value;
}
inline void CSGOUserCmdPB::set_is_predicting_body_shot_fx(bool value) {
  _internal_set_is_predicting_body_shot_fx(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.is_predicting_body_shot_fx)
}

// optional bool is_predicting_head_shot_fx = 12 [default = false];
inline bool CSGOUserCmdPB::_internal_has_is_predicting_head_shot_fx() const {
  bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_is_predicting_head_shot_fx() const {
  return _internal_has_is_predicting_head_shot_fx();
}
inline void CSGOUserCmdPB::clear_is_predicting_head_shot_fx() {
  _impl_.is_predicting_head_shot_fx_ = false;
  _impl_._has_bits_[0] &= ~0x00000008u;
}
inline bool CSGOUserCmdPB::_internal_is_predicting_head_shot_fx() const {
  return _impl_.is_predicting_head_shot_fx_;
}
inline bool CSGOUserCmdPB::is_predicting_head_shot_fx() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.is_predicting_head_shot_fx)
  return _internal_is_predicting_head_shot_fx();
}
inline void CSGOUserCmdPB::_internal_set_is_predicting_head_shot_fx(bool value) {
  _impl_._has_bits_[0] |= 0x00000008u;
  _impl_.is_predicting_head_shot_fx_ = value;
}
inline void CSGOUserCmdPB::set_is_predicting_head_shot_fx(bool value) {
  _internal_set_is_predicting_head_shot_fx(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.is_predicting_head_shot_fx)
}

// optional bool is_predicting_kill_ragdolls = 13 [default = false];
inline bool CSGOUserCmdPB::_internal_has_is_predicting_kill_ragdolls() const {
  bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
  return value;
}
inline bool CSGOUserCmdPB::has_is_predicting_kill_ragdolls() const {
  return _internal_has_is_predicting_kill_ragdolls();
}
inline void CSGOUserCmdPB::clear_is_predicting_kill_ragdolls() {
  _impl_.is_predicting_kill_ragdolls_ = false;
  _impl_._has_bits_[0] &= ~0x00000010u;
}
inline bool CSGOUserCmdPB::_internal_is_predicting_kill_ragdolls() const {
  return _impl_.is_predicting_kill_ragdolls_;
}
inline bool CSGOUserCmdPB::is_predicting_kill_ragdolls() const {
  // @@protoc_insertion_point(field_get:CSGOUserCmdPB.is_predicting_kill_ragdolls)
  return _internal_is_predicting_kill_ragdolls();
}
inline void CSGOUserCmdPB::_internal_set_is_predicting_kill_ragdolls(bool value) {
  _impl_._has_bits_[0] |= 0x00000010u;
  _impl_.is_predicting_kill_ragdolls_ = value;
}
inline void CSGOUserCmdPB::set_is_predicting_kill_ragdolls(bool value) {
  _internal_set_is_predicting_kill_ragdolls(value);
  // @@protoc_insertion_point(field_set:CSGOUserCmdPB.is_predicting_kill_ragdolls)
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------


// @@protoc_insertion_point(namespace_scope)


// @@protoc_insertion_point(global_scope)

#include <google/protobuf/port_undef.inc>
#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_cs_5fusercmd_2eproto
