// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: steamnetworkingsockets_messages.proto
// Protobuf C++ Version: 7.35.1

#include "steamnetworkingsockets_messages.pb.h"

#include <algorithm>
#include <type_traits>
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/generated_message_tctable_impl.h"
#include "google/protobuf/internal_visibility.h"
#include "google/protobuf/extension_set.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/wire_format_lite.h"
#include "google/protobuf/descriptor.h"
#include "google/protobuf/generated_message_reflection.h"
#include "google/protobuf/reflection_ops.h"
#include "google/protobuf/wire_format.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"
PROTOBUF_PRAGMA_INIT_SEG
namespace _pb = ::google::protobuf;
namespace _pbi = ::google::protobuf::internal;
namespace _fl = ::google::protobuf::internal::field_layout;
#ifdef PROTOBUF_MESSAGE_GLOBALS
namespace {
PROTOBUF_CONSTINIT ::google::protobuf::internal::ReflectionData
    file_reflection_data[] = {
        // ::CMsgSteamDatagramSessionCryptInfo
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamDatagramSessionCryptInfoSigned
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamDatagramDiagnostic
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamDatagramLinkInstantaneousStats
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamDatagramLinkLifetimeStats
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamDatagramConnectionQuality
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgICECandidate
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgICERendezvous_Auth
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgICERendezvous
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous_ConnectRequest
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous_ConnectOK
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous_ReliableMessage
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingP2PRendezvous
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
        // ::CMsgSteamNetworkingICESessionSummary
        {&::_pbi::kDescriptorMethods, &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto, /* tracker*/ nullptr,},
};
}  // namespace
#endif
class CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::ParseTableT_ CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_._has_bits_),
      0, // no _extensions_
      6, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967247,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint32 reason_code = 6;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.reason_code_), 1>(),
       {48, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.reason_code_)}},
      // optional string debug = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.debug_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string debug = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.debug_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional uint32 reason_code = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.reason_code_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        debug_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        reason_code_{0u} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous_ConnectionClosed(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed), alignof(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>(), &CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[11],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvous_ConnectionClosedGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvous_ConnectionClosedGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvous_ConnectionClosedGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous_ConnectionClosed _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectionClosedGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvous_ConnectionClosedGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::ParseTableT_ CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint32 lane_idx = 4;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.lane_idx_), 3>(),
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.lane_idx_)}},
      // optional bytes data = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.data_)}},
      // optional uint64 msg_num = 2;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.msg_num_), 1>(),
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.msg_num_)}},
      // optional uint32 flags = 3;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.flags_), 2>(),
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.flags_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional bytes data = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.data_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional uint64 msg_num = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.msg_num_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint32 flags = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.flags_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 lane_idx = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.lane_idx_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        data_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        msg_num_{::uint64_t{0u}},
        flags_{0u},
        lane_idx_{0u} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous_ApplicationMessage(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage), alignof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>(), &CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[13],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvous_ApplicationMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvous_ApplicationMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvous_ApplicationMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous_ApplicationMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvous_ApplicationMessageGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingICESessionSummary::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingICESessionSummary>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingICESessionSummary::ParseTableT_ CMsgSteamNetworkingICESessionSummary::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_._has_bits_),
      0, // no _extensions_
      19, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294444928,  // skipmap
      offsetof(ParseTableT_, field_entries),
      15,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingICESessionSummary>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint32 best_route_kind = 16;
      {::_pbi::TcParser::FastV32S2,
       {384, 11, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_route_kind_)}},
      // optional uint32 local_candidate_types = 1;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_), 0>(),
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_)}},
      // optional uint32 remote_candidate_types = 2;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.remote_candidate_types_), 1>(),
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.remote_candidate_types_)}},
      // optional uint32 initial_route_kind = 3;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.initial_route_kind_), 2>(),
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_route_kind_)}},
      // optional uint32 initial_ping = 4;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.initial_ping_), 3>(),
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_ping_)}},
      // optional uint32 negotiation_ms = 5;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.negotiation_ms_), 4>(),
       {40, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.negotiation_ms_)}},
      // optional uint32 initial_score = 6;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.initial_score_), 5>(),
       {48, 5, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_score_)}},
      // optional uint32 failure_reason_code = 7;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.failure_reason_code_), 6>(),
       {56, 6, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.failure_reason_code_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint32 selected_seconds = 12;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.selected_seconds_), 7>(),
       {96, 7, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.selected_seconds_)}},
      // optional uint32 user_settings = 13;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.user_settings_), 8>(),
       {104, 8, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.user_settings_)}},
      // optional uint32 ice_enable_var = 14;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.ice_enable_var_), 9>(),
       {112, 9, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.ice_enable_var_)}},
      // optional uint32 local_candidate_types_allowed = 15;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_allowed_), 10>(),
       {120, 10, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_allowed_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint32 local_candidate_types = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 remote_candidate_types = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.remote_candidate_types_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 initial_route_kind = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_route_kind_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 initial_ping = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_ping_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 negotiation_ms = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.negotiation_ms_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 initial_score = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.initial_score_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 failure_reason_code = 7;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.failure_reason_code_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 selected_seconds = 12;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.selected_seconds_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 user_settings = 13;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.user_settings_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ice_enable_var = 14;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.ice_enable_var_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 local_candidate_types_allowed = 15;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_allowed_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 best_route_kind = 16;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_route_kind_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 best_ping = 17;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_ping_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 best_score = 18;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_score_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 best_time = 19;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_time_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingICESessionSummary::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        local_candidate_types_{0u},
        remote_candidate_types_{0u},
        initial_route_kind_{0u},
        initial_ping_{0u},
        negotiation_ms_{0u},
        initial_score_{0u},
        failure_reason_code_{0u},
        selected_seconds_{0u},
        user_settings_{0u},
        ice_enable_var_{0u},
        local_candidate_types_allowed_{0u},
        best_route_kind_{0u},
        best_ping_{0u},
        best_score_{0u},
        best_time_{0u} {}

template <typename>
constexpr CMsgSteamNetworkingICESessionSummary::CMsgSteamNetworkingICESessionSummary(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingICESessionSummary::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingICESessionSummary(arena);
}
constexpr auto CMsgSteamNetworkingICESessionSummary::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgSteamNetworkingICESessionSummary), alignof(CMsgSteamNetworkingICESessionSummary));
}
constexpr auto CMsgSteamNetworkingICESessionSummary::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingICESessionSummary::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingICESessionSummary>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingICESessionSummary::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingICESessionSummary>(), &CMsgSteamNetworkingICESessionSummary::ByteSizeLong,
              &CMsgSteamNetworkingICESessionSummary::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[15],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingICESessionSummaryGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingICESessionSummaryGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingICESessionSummary_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingICESessionSummary::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingICESessionSummary_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingICESessionSummary>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingICESessionSummaryGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingICESessionSummary _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingICESessionSummary>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummaryGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingICESessionSummaryGlobalsTypeInternal CMsgSteamNetworkingICESessionSummary_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingICESessionSummary_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingICESessionSummary_globals_.GetClassData();
#else
  return CMsgSteamNetworkingICESessionSummary_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramSessionCryptInfoSigned::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramSessionCryptInfoSigned>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramSessionCryptInfoSigned::ParseTableT_ CMsgSteamDatagramSessionCryptInfoSigned::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramSessionCryptInfoSigned>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional bytes signature = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_.signature_)}},
      // optional bytes info = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_.info_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional bytes info = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_.info_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bytes signature = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_.signature_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramSessionCryptInfoSigned::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        info_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        signature_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

template <typename>
constexpr CMsgSteamDatagramSessionCryptInfoSigned::CMsgSteamDatagramSessionCryptInfoSigned(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfoSigned::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramSessionCryptInfoSigned(arena);
}
constexpr auto CMsgSteamDatagramSessionCryptInfoSigned::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamDatagramSessionCryptInfoSigned), alignof(CMsgSteamDatagramSessionCryptInfoSigned));
}
constexpr auto CMsgSteamDatagramSessionCryptInfoSigned::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramSessionCryptInfoSigned::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramSessionCryptInfoSigned>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramSessionCryptInfoSigned::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramSessionCryptInfoSigned>(), &CMsgSteamDatagramSessionCryptInfoSigned::ByteSizeLong,
              &CMsgSteamDatagramSessionCryptInfoSigned::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSigned, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[1],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramSessionCryptInfoSignedGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramSessionCryptInfoSignedGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramSessionCryptInfoSigned_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramSessionCryptInfoSigned::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramSessionCryptInfoSigned_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramSessionCryptInfoSigned>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramSessionCryptInfoSignedGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramSessionCryptInfoSigned _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramSessionCryptInfoSigned>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoSignedGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramSessionCryptInfoSignedGlobalsTypeInternal CMsgSteamDatagramSessionCryptInfoSigned_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramSessionCryptInfoSigned_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramSessionCryptInfoSigned_globals_.GetClassData();
#else
  return CMsgSteamDatagramSessionCryptInfoSigned_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramSessionCryptInfo::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramSessionCryptInfo>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramSessionCryptInfo::ParseTableT_ CMsgSteamDatagramSessionCryptInfo::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_._has_bits_),
      0, // no _extensions_
      5, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967264,  // skipmap
      offsetof(ParseTableT_, field_entries),
      5,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramSessionCryptInfo>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional .CMsgSteamDatagramSessionCryptInfo.EKeyType key_type = 1;
      {::_pbi::TcParser::FastEr0S1,
       {8, 2, 1,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.key_type_)}},
      // optional bytes key_data = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.key_data_)}},
      // optional fixed64 nonce = 3;
      {::_pbi::TcParser::FastF64S1,
       {25, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.nonce_)}},
      // optional uint32 protocol_version = 4;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramSessionCryptInfo, _impl_.protocol_version_), 3>(),
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.protocol_version_)}},
      // repeated .ESteamNetworkingSocketsCipher ciphers = 5;
      {::_pbi::TcParser::FastEr0R1,
       {40, 0, 3,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgSteamDatagramSessionCryptInfo.EKeyType key_type = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.key_type_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
      // optional bytes key_data = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.key_data_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional fixed64 nonce = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.nonce_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kFixed64)},
      // optional uint32 protocol_version = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.protocol_version_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // repeated .ESteamNetworkingSocketsCipher ciphers = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kEnumRange)},
    }},
    {{
        {0, 1},
        {0, 3},
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramSessionCryptInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        ciphers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramSessionCryptInfo,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_)>()
         }
        ,
        key_data_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        key_type_{static_cast< ::CMsgSteamDatagramSessionCryptInfo_EKeyType >(0)},
        protocol_version_{0u},
        nonce_{::uint64_t{0u}} {}

template <typename>
constexpr CMsgSteamDatagramSessionCryptInfo::CMsgSteamDatagramSessionCryptInfo(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfo::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramSessionCryptInfo(arena);
}
constexpr auto CMsgSteamDatagramSessionCryptInfo::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamDatagramSessionCryptInfo), alignof(CMsgSteamDatagramSessionCryptInfo));
}
constexpr auto CMsgSteamDatagramSessionCryptInfo::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramSessionCryptInfo::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramSessionCryptInfo>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramSessionCryptInfo::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramSessionCryptInfo>(), &CMsgSteamDatagramSessionCryptInfo::ByteSizeLong,
              &CMsgSteamDatagramSessionCryptInfo::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[0],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramSessionCryptInfoGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramSessionCryptInfoGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramSessionCryptInfo_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramSessionCryptInfo::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramSessionCryptInfo_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramSessionCryptInfo>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramSessionCryptInfoGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramSessionCryptInfo _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramSessionCryptInfo>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfoGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramSessionCryptInfoGlobalsTypeInternal CMsgSteamDatagramSessionCryptInfo_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramSessionCryptInfo_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramSessionCryptInfo_globals_.GetClassData();
#else
  return CMsgSteamDatagramSessionCryptInfo_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramLinkLifetimeStats::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramLinkLifetimeStats>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramLinkLifetimeStats::ParseTableT_ CMsgSteamDatagramLinkLifetimeStats::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_._has_bits_),
      0, // no _extensions_
      66, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      1015809,  // skipmap
      offsetof(ParseTableT_, field_entries),
      47,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramLinkLifetimeStats>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint32 connected_seconds = 2;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.connected_seconds_), 8>(),
       {16, 8, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.connected_seconds_)}},
      // optional uint64 packets_sent = 3;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_sent_), 2>(),
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_sent_)}},
      // optional uint64 kb_sent = 4;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_sent_), 3>(),
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_sent_)}},
      // optional uint64 packets_recv = 5;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_), 4>(),
       {40, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_)}},
      // optional uint64 kb_recv = 6;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_recv_), 5>(),
       {48, 5, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_recv_)}},
      // optional uint64 packets_recv_sequenced = 7;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_sequenced_), 6>(),
       {56, 6, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_sequenced_)}},
      // optional uint64 packets_recv_dropped = 8;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_dropped_), 7>(),
       {64, 7, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_dropped_)}},
      // optional uint64 packets_recv_out_of_order = 9;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_), 10>(),
       {72, 10, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_)}},
      // optional uint64 packets_recv_duplicate = 10;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_duplicate_), 11>(),
       {80, 11, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_duplicate_)}},
      // optional uint64 packets_recv_lurch = 11;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_lurch_), 12>(),
       {88, 12, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_lurch_)}},
      // repeated uint64 multipath_packets_recv_sequenced = 12;
      {::_pbi::TcParser::FastV64R1,
       {96, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_)}},
      // repeated uint64 multipath_packets_recv_later = 13;
      {::_pbi::TcParser::FastV64R1,
       {104, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_)}},
      // optional uint32 multipath_send_enabled = 14;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_send_enabled_), 9>(),
       {112, 9, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_send_enabled_)}},
      // optional uint64 packets_recv_out_of_order_corrected = 15;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_corrected_), 13>(),
       {120, 13, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_corrected_)}},
      // optional uint32 quality_ntile_25th = 32;
      {::_pbi::TcParser::FastV32S2,
       {640, 25, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_25th_)}},
      // optional uint32 quality_ntile_50th = 33;
      {::_pbi::TcParser::FastV32S2,
       {648, 26, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_50th_)}},
      // optional uint32 ping_ntile_5th = 50;
      {::_pbi::TcParser::FastV32S2,
       {912, 27, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_5th_)}},
      // optional uint32 ping_ntile_50th = 51;
      {::_pbi::TcParser::FastV32S2,
       {920, 28, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_50th_)}},
      // optional uint32 ping_ntile_75th = 52;
      {::_pbi::TcParser::FastV32S2,
       {928, 29, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_75th_)}},
      // optional uint32 quality_histogram_100 = 21;
      {::_pbi::TcParser::FastV32S2,
       {424, 14, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_100_)}},
      // optional uint32 quality_histogram_99 = 22;
      {::_pbi::TcParser::FastV32S2,
       {432, 15, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_99_)}},
      // optional uint32 quality_histogram_97 = 23;
      {::_pbi::TcParser::FastV32S2,
       {440, 16, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_97_)}},
      // optional uint32 quality_histogram_95 = 24;
      {::_pbi::TcParser::FastV32S2,
       {448, 17, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_95_)}},
      // optional uint32 quality_histogram_90 = 25;
      {::_pbi::TcParser::FastV32S2,
       {456, 18, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_90_)}},
      // optional uint32 quality_histogram_75 = 26;
      {::_pbi::TcParser::FastV32S2,
       {464, 19, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_75_)}},
      // optional uint32 quality_histogram_50 = 27;
      {::_pbi::TcParser::FastV32S2,
       {472, 20, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_50_)}},
      // optional uint32 quality_histogram_1 = 28;
      {::_pbi::TcParser::FastV32S2,
       {480, 21, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_1_)}},
      // optional uint32 quality_histogram_dead = 29;
      {::_pbi::TcParser::FastV32S2,
       {488, 22, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_dead_)}},
      // optional uint32 quality_ntile_2nd = 30;
      {::_pbi::TcParser::FastV32S2,
       {496, 23, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_2nd_)}},
      // optional uint32 quality_ntile_5th = 31;
      {::_pbi::TcParser::FastV32S2,
       {504, 24, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_5th_)}},
    }}, {{
      33, 0, 3,
      254, 26,
      4032, 35,
      65532, 45,
      65535, 65535
    }}, {{
      // optional uint32 connected_seconds = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.connected_seconds_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint64 packets_sent = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_sent_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 kb_sent = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_sent_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 kb_recv = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_recv_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv_sequenced = 7;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_sequenced_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv_dropped = 8;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_dropped_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv_out_of_order = 9;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv_duplicate = 10;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_duplicate_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 packets_recv_lurch = 11;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_lurch_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // repeated uint64 multipath_packets_recv_sequenced = 12;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUInt64)},
      // repeated uint64 multipath_packets_recv_later = 13;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kUInt64)},
      // optional uint32 multipath_send_enabled = 14;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_send_enabled_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint64 packets_recv_out_of_order_corrected = 15;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_corrected_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint32 quality_histogram_100 = 21;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_100_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_99 = 22;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_99_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_97 = 23;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_97_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_95 = 24;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_95_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_90 = 25;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_90_), _Internal::kHasBitsOffset + 18, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_75 = 26;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_75_), _Internal::kHasBitsOffset + 19, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_50 = 27;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_50_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_1 = 28;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_1_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_histogram_dead = 29;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_dead_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_ntile_2nd = 30;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_2nd_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_ntile_5th = 31;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_5th_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_ntile_25th = 32;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_25th_), _Internal::kHasBitsOffset + 25, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 quality_ntile_50th = 33;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_50th_), _Internal::kHasBitsOffset + 26, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_25 = 41;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_25_), _Internal::kHasBitsOffset + 30, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_50 = 42;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_50_), _Internal::kHasBitsOffset + 31, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_75 = 43;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_75_), _Internal::kHasBitsOffset + 32, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_100 = 44;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_100_), _Internal::kHasBitsOffset + 33, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_125 = 45;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_125_), _Internal::kHasBitsOffset + 34, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_150 = 46;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_150_), _Internal::kHasBitsOffset + 35, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_200 = 47;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_200_), _Internal::kHasBitsOffset + 36, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_300 = 48;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_300_), _Internal::kHasBitsOffset + 37, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_histogram_max = 49;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_max_), _Internal::kHasBitsOffset + 38, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ntile_5th = 50;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_5th_), _Internal::kHasBitsOffset + 27, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ntile_50th = 51;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_50th_), _Internal::kHasBitsOffset + 28, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ntile_75th = 52;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_75th_), _Internal::kHasBitsOffset + 29, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ntile_95th = 53;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_95th_), _Internal::kHasBitsOffset + 39, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ntile_98th = 54;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_98th_), _Internal::kHasBitsOffset + 40, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_negligible = 61;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_negligible_), _Internal::kHasBitsOffset + 41, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_1 = 62;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_1_), _Internal::kHasBitsOffset + 42, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_2 = 63;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_2_), _Internal::kHasBitsOffset + 43, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_5 = 64;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_5_), _Internal::kHasBitsOffset + 44, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_10 = 65;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_10_), _Internal::kHasBitsOffset + 45, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 jitter_histogram_20 = 66;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_20_), _Internal::kHasBitsOffset + 46, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramLinkLifetimeStats::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        multipath_packets_recv_sequenced_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramLinkLifetimeStats,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_)>()
         }
        ,
        multipath_packets_recv_later_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramLinkLifetimeStats,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_)>()
         }
        ,
        packets_sent_{::uint64_t{0u}},
        kb_sent_{::uint64_t{0u}},
        packets_recv_{::uint64_t{0u}},
        kb_recv_{::uint64_t{0u}},
        packets_recv_sequenced_{::uint64_t{0u}},
        packets_recv_dropped_{::uint64_t{0u}},
        connected_seconds_{0u},
        multipath_send_enabled_{0u},
        packets_recv_out_of_order_{::uint64_t{0u}},
        packets_recv_duplicate_{::uint64_t{0u}},
        packets_recv_lurch_{::uint64_t{0u}},
        packets_recv_out_of_order_corrected_{::uint64_t{0u}},
        quality_histogram_100_{0u},
        quality_histogram_99_{0u},
        quality_histogram_97_{0u},
        quality_histogram_95_{0u},
        quality_histogram_90_{0u},
        quality_histogram_75_{0u},
        quality_histogram_50_{0u},
        quality_histogram_1_{0u},
        quality_histogram_dead_{0u},
        quality_ntile_2nd_{0u},
        quality_ntile_5th_{0u},
        quality_ntile_25th_{0u},
        quality_ntile_50th_{0u},
        ping_ntile_5th_{0u},
        ping_ntile_50th_{0u},
        ping_ntile_75th_{0u},
        ping_histogram_25_{0u},
        ping_histogram_50_{0u},
        ping_histogram_75_{0u},
        ping_histogram_100_{0u},
        ping_histogram_125_{0u},
        ping_histogram_150_{0u},
        ping_histogram_200_{0u},
        ping_histogram_300_{0u},
        ping_histogram_max_{0u},
        ping_ntile_95th_{0u},
        ping_ntile_98th_{0u},
        jitter_histogram_negligible_{0u},
        jitter_histogram_1_{0u},
        jitter_histogram_2_{0u},
        jitter_histogram_5_{0u},
        jitter_histogram_10_{0u},
        jitter_histogram_20_{0u} {}

template <typename>
constexpr CMsgSteamDatagramLinkLifetimeStats::CMsgSteamDatagramLinkLifetimeStats(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramLinkLifetimeStats::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramLinkLifetimeStats(arena);
}
constexpr auto CMsgSteamDatagramLinkLifetimeStats::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamDatagramLinkLifetimeStats), alignof(CMsgSteamDatagramLinkLifetimeStats));
}
constexpr auto CMsgSteamDatagramLinkLifetimeStats::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramLinkLifetimeStats::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramLinkLifetimeStats>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramLinkLifetimeStats::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramLinkLifetimeStats>(), &CMsgSteamDatagramLinkLifetimeStats::ByteSizeLong,
              &CMsgSteamDatagramLinkLifetimeStats::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[4],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramLinkLifetimeStatsGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramLinkLifetimeStatsGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramLinkLifetimeStats_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramLinkLifetimeStats::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramLinkLifetimeStats_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramLinkLifetimeStats>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramLinkLifetimeStatsGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramLinkLifetimeStats _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramLinkLifetimeStats>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStatsGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramLinkLifetimeStatsGlobalsTypeInternal CMsgSteamDatagramLinkLifetimeStats_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramLinkLifetimeStats_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramLinkLifetimeStats_globals_.GetClassData();
#else
  return CMsgSteamDatagramLinkLifetimeStats_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramLinkInstantaneousStats::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramLinkInstantaneousStats>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramLinkInstantaneousStats::ParseTableT_ CMsgSteamDatagramLinkInstantaneousStats::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_._has_bits_),
      0, // no _extensions_
      8, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967040,  // skipmap
      offsetof(ParseTableT_, field_entries),
      8,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramLinkInstantaneousStats>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint32 peak_jitter_usec = 8;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.peak_jitter_usec_), 7>(),
       {64, 7, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.peak_jitter_usec_)}},
      // optional uint32 out_packets_per_sec_x10 = 1;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_packets_per_sec_x10_), 0>(),
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_packets_per_sec_x10_)}},
      // optional uint32 out_bytes_per_sec = 2;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_bytes_per_sec_), 1>(),
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_bytes_per_sec_)}},
      // optional uint32 in_packets_per_sec_x10 = 3;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_packets_per_sec_x10_), 2>(),
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_packets_per_sec_x10_)}},
      // optional uint32 in_bytes_per_sec = 4;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_bytes_per_sec_), 3>(),
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_bytes_per_sec_)}},
      // optional uint32 ping_ms = 5;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.ping_ms_), 4>(),
       {40, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.ping_ms_)}},
      // optional uint32 packets_dropped_pct = 6;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_dropped_pct_), 5>(),
       {48, 5, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_dropped_pct_)}},
      // optional uint32 packets_weird_sequence_pct = 7;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_weird_sequence_pct_), 6>(),
       {56, 6, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_weird_sequence_pct_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint32 out_packets_per_sec_x10 = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_packets_per_sec_x10_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 out_bytes_per_sec = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_bytes_per_sec_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 in_packets_per_sec_x10 = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_packets_per_sec_x10_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 in_bytes_per_sec = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_bytes_per_sec_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 ping_ms = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.ping_ms_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 packets_dropped_pct = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_dropped_pct_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 packets_weird_sequence_pct = 7;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_weird_sequence_pct_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 peak_jitter_usec = 8;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.peak_jitter_usec_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramLinkInstantaneousStats::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        out_packets_per_sec_x10_{0u},
        out_bytes_per_sec_{0u},
        in_packets_per_sec_x10_{0u},
        in_bytes_per_sec_{0u},
        ping_ms_{0u},
        packets_dropped_pct_{0u},
        packets_weird_sequence_pct_{0u},
        peak_jitter_usec_{0u} {}

template <typename>
constexpr CMsgSteamDatagramLinkInstantaneousStats::CMsgSteamDatagramLinkInstantaneousStats(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramLinkInstantaneousStats::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramLinkInstantaneousStats(arena);
}
constexpr auto CMsgSteamDatagramLinkInstantaneousStats::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgSteamDatagramLinkInstantaneousStats), alignof(CMsgSteamDatagramLinkInstantaneousStats));
}
constexpr auto CMsgSteamDatagramLinkInstantaneousStats::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramLinkInstantaneousStats::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramLinkInstantaneousStats>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramLinkInstantaneousStats::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramLinkInstantaneousStats>(), &CMsgSteamDatagramLinkInstantaneousStats::ByteSizeLong,
              &CMsgSteamDatagramLinkInstantaneousStats::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[3],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramLinkInstantaneousStatsGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramLinkInstantaneousStatsGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramLinkInstantaneousStats_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramLinkInstantaneousStats::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramLinkInstantaneousStats_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramLinkInstantaneousStats>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramLinkInstantaneousStatsGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramLinkInstantaneousStats _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramLinkInstantaneousStats>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStatsGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramLinkInstantaneousStatsGlobalsTypeInternal CMsgSteamDatagramLinkInstantaneousStats_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramLinkInstantaneousStats_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramLinkInstantaneousStats_globals_.GetClassData();
#else
  return CMsgSteamDatagramLinkInstantaneousStats_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramDiagnostic::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramDiagnostic>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramDiagnostic::ParseTableT_ CMsgSteamDatagramDiagnostic::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramDiagnostic>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional string text = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_.text_)}},
      // optional uint32 severity = 1;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamDatagramDiagnostic, _impl_.severity_), 1>(),
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_.severity_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint32 severity = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_.severity_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional string text = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_.text_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramDiagnostic::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        text_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        severity_{0u} {}

template <typename>
constexpr CMsgSteamDatagramDiagnostic::CMsgSteamDatagramDiagnostic(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramDiagnostic::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramDiagnostic(arena);
}
constexpr auto CMsgSteamDatagramDiagnostic::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamDatagramDiagnostic), alignof(CMsgSteamDatagramDiagnostic));
}
constexpr auto CMsgSteamDatagramDiagnostic::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramDiagnostic::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramDiagnostic>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramDiagnostic::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramDiagnostic>(), &CMsgSteamDatagramDiagnostic::ByteSizeLong,
              &CMsgSteamDatagramDiagnostic::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnostic, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[2],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramDiagnosticGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramDiagnosticGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramDiagnostic_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramDiagnostic::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramDiagnostic_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramDiagnostic>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramDiagnosticGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramDiagnostic _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramDiagnostic>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramDiagnosticGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramDiagnosticGlobalsTypeInternal CMsgSteamDatagramDiagnostic_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramDiagnostic_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramDiagnostic_globals_.GetClassData();
#else
  return CMsgSteamDatagramDiagnostic_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgICERendezvous_Auth::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgICERendezvous_Auth>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_Auth, _impl_._has_bits_);
};

constexpr CMsgICERendezvous_Auth::ParseTableT_ CMsgICERendezvous_Auth::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_Auth, _impl_._has_bits_),
      0, // no _extensions_
      1, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgICERendezvous_Auth>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional string pwd_frag = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_Auth, _impl_.pwd_frag_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string pwd_frag = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_Auth, _impl_.pwd_frag_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgICERendezvous_Auth::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        pwd_frag_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

template <typename>
constexpr CMsgICERendezvous_Auth::CMsgICERendezvous_Auth(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgICERendezvous_Auth::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgICERendezvous_Auth(arena);
}
constexpr auto CMsgICERendezvous_Auth::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgICERendezvous_Auth), alignof(CMsgICERendezvous_Auth));
}
constexpr auto CMsgICERendezvous_Auth::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgICERendezvous_Auth::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgICERendezvous_Auth>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgICERendezvous_Auth::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgICERendezvous_Auth>(), &CMsgICERendezvous_Auth::ByteSizeLong,
              &CMsgICERendezvous_Auth::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_Auth, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[7],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgICERendezvous_AuthGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgICERendezvous_AuthGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgICERendezvous_Auth_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgICERendezvous_Auth::InternalGenerateClassData_(
            _default, &CMsgICERendezvous_Auth_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgICERendezvous_Auth>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgICERendezvous_AuthGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgICERendezvous_Auth _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgICERendezvous_Auth>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgICERendezvous_AuthGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgICERendezvous_AuthGlobalsTypeInternal CMsgICERendezvous_Auth_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgICERendezvous_Auth_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgICERendezvous_Auth_globals_.GetClassData();
#else
  return CMsgICERendezvous_Auth_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgICECandidate::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgICECandidate>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgICECandidate, _impl_._has_bits_);
};

constexpr CMsgICECandidate::ParseTableT_ CMsgICECandidate::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgICECandidate, _impl_._has_bits_),
      0, // no _extensions_
      3, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967291,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgICECandidate>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional string candidate = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgICECandidate, _impl_.candidate_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string candidate = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgICECandidate, _impl_.candidate_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr CMsgICECandidate::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        candidate_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()) {}

template <typename>
constexpr CMsgICECandidate::CMsgICECandidate(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgICECandidate::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgICECandidate(arena);
}
constexpr auto CMsgICECandidate::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgICECandidate), alignof(CMsgICECandidate));
}
constexpr auto CMsgICECandidate::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgICECandidate::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgICECandidate>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgICECandidate::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgICECandidate>(), &CMsgICECandidate::ByteSizeLong,
              &CMsgICECandidate::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgICECandidate, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[6],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgICECandidateGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgICECandidateGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgICECandidate_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgICECandidate::InternalGenerateClassData_(
            _default, &CMsgICECandidate_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgICECandidate>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgICECandidateGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgICECandidate _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgICECandidate>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgICECandidateGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgICECandidateGlobalsTypeInternal CMsgICECandidate_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgICECandidate_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgICECandidate_globals_.GetClassData();
#else
  return CMsgICECandidate_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous_ConnectRequest>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous_ConnectRequest::ParseTableT_ CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_._has_bits_),
      0, // no _extensions_
      11, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294965407,  // skipmap
      offsetof(ParseTableT_, field_entries),
      5,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectRequest>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint32 to_virtual_port = 9;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.to_virtual_port_), 3>(),
       {72, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.to_virtual_port_)}},
      // optional uint32 from_virtual_port = 10;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_virtual_port_), 4>(),
       {80, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_virtual_port_)}},
      // optional string from_fakeip = 11;
      {::_pbi::TcParser::FastBS1,
       {90, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_fakeip_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
      {::_pbi::TcParser::FastMtS1,
       {50, 1, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.crypt_)}},
      // optional .CMsgSteamDatagramCertificateSigned cert = 7;
      {::_pbi::TcParser::FastMtS1,
       {58, 2, 1,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.cert_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.crypt_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgSteamDatagramCertificateSigned cert = 7;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.cert_), _Internal::kHasBitsOffset + 2, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional uint32 to_virtual_port = 9;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.to_virtual_port_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 from_virtual_port = 10;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_virtual_port_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional string from_fakeip = 11;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_fakeip_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramSessionCryptInfoSigned>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramSessionCryptInfoSigned_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramCertificateSigned>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramCertificateSigned_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous_ConnectRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        from_fakeip_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        crypt_{nullptr},
        cert_{nullptr},
        to_virtual_port_{0u},
        from_virtual_port_{0u} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous_ConnectRequest::CMsgSteamNetworkingP2PRendezvous_ConnectRequest(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectRequest::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous_ConnectRequest(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamNetworkingP2PRendezvous_ConnectRequest), alignof(CMsgSteamNetworkingP2PRendezvous_ConnectRequest));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous_ConnectRequest::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous_ConnectRequest>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous_ConnectRequest::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous_ConnectRequest>(), &CMsgSteamNetworkingP2PRendezvous_ConnectRequest::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[9],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvous_ConnectRequestGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvous_ConnectRequestGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectRequest>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvous_ConnectRequestGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous_ConnectRequest _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectRequest>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequestGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvous_ConnectRequestGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_ConnectRequest_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingP2PRendezvous_ConnectOK::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous_ConnectOK>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous_ConnectOK::ParseTableT_ CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_._has_bits_),
      0, // no _extensions_
      6, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967247,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectOK>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional .CMsgSteamDatagramCertificateSigned cert = 6;
      {::_pbi::TcParser::FastMtS1,
       {50, 1, 1,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.cert_)}},
      // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
      {::_pbi::TcParser::FastMtS1,
       {42, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.crypt_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.crypt_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgSteamDatagramCertificateSigned cert = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.cert_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramSessionCryptInfoSigned>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramSessionCryptInfoSigned_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramCertificateSigned>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramCertificateSigned_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous_ConnectOK::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        crypt_{nullptr},
        cert_{nullptr} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous_ConnectOK::CMsgSteamNetworkingP2PRendezvous_ConnectOK(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectOK::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous_ConnectOK(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgSteamNetworkingP2PRendezvous_ConnectOK), alignof(CMsgSteamNetworkingP2PRendezvous_ConnectOK));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous_ConnectOK::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous_ConnectOK>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous_ConnectOK::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous_ConnectOK>(), &CMsgSteamNetworkingP2PRendezvous_ConnectOK::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous_ConnectOK::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[10],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvous_ConnectOKGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvous_ConnectOKGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectOK>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvous_ConnectOKGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous_ConnectOK _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ConnectOK>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOKGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvous_ConnectOKGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_ConnectOK_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamDatagramConnectionQuality::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamDatagramConnectionQuality>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_._has_bits_);
};

constexpr CMsgSteamDatagramConnectionQuality::ParseTableT_ CMsgSteamDatagramConnectionQuality::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamDatagramConnectionQuality>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional .CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
      {::_pbi::TcParser::FastMtS1,
       {18, 1, 1,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.lifetime_)}},
      // optional .CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.instantaneous_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.instantaneous_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.lifetime_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramLinkInstantaneousStats>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramLinkInstantaneousStats_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamDatagramLinkLifetimeStats>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamDatagramLinkLifetimeStats_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamDatagramConnectionQuality::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        instantaneous_{nullptr},
        lifetime_{nullptr} {}

template <typename>
constexpr CMsgSteamDatagramConnectionQuality::CMsgSteamDatagramConnectionQuality(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamDatagramConnectionQuality::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamDatagramConnectionQuality(arena);
}
constexpr auto CMsgSteamDatagramConnectionQuality::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgSteamDatagramConnectionQuality), alignof(CMsgSteamDatagramConnectionQuality));
}
constexpr auto CMsgSteamDatagramConnectionQuality::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamDatagramConnectionQuality::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamDatagramConnectionQuality>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamDatagramConnectionQuality::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamDatagramConnectionQuality>(), &CMsgSteamDatagramConnectionQuality::ByteSizeLong,
              &CMsgSteamDatagramConnectionQuality::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[5],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamDatagramConnectionQualityGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamDatagramConnectionQualityGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamDatagramConnectionQuality_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamDatagramConnectionQuality::InternalGenerateClassData_(
            _default, &CMsgSteamDatagramConnectionQuality_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramConnectionQuality>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamDatagramConnectionQualityGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamDatagramConnectionQuality _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamDatagramConnectionQuality>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQualityGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamDatagramConnectionQualityGlobalsTypeInternal CMsgSteamDatagramConnectionQuality_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamDatagramConnectionQuality_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamDatagramConnectionQuality_globals_.GetClassData();
#else
  return CMsgSteamDatagramConnectionQuality_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgICERendezvous::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgICERendezvous>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_._has_bits_);
};

constexpr CMsgICERendezvous::ParseTableT_ CMsgICERendezvous::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgICERendezvous>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional .CMsgICERendezvous.Auth auth = 2;
      {::_pbi::TcParser::FastMtS1,
       {18, 1, 1,
        PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.auth_)}},
      // optional .CMsgICECandidate add_candidate = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.add_candidate_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgICECandidate add_candidate = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.add_candidate_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgICERendezvous.Auth auth = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.auth_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgICECandidate>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgICECandidate_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgICERendezvous_Auth>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgICERendezvous_Auth_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgICERendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        add_candidate_{nullptr},
        auth_{nullptr} {}

template <typename>
constexpr CMsgICERendezvous::CMsgICERendezvous(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgICERendezvous::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgICERendezvous(arena);
}
constexpr auto CMsgICERendezvous::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgICERendezvous), alignof(CMsgICERendezvous));
}
constexpr auto CMsgICERendezvous::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgICERendezvous::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgICERendezvous>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgICERendezvous::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgICERendezvous>(), &CMsgICERendezvous::ByteSizeLong,
              &CMsgICERendezvous::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[8],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgICERendezvousGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgICERendezvousGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgICERendezvous_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgICERendezvous::InternalGenerateClassData_(
            _default, &CMsgICERendezvous_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgICERendezvous>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgICERendezvousGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgICERendezvous _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgICERendezvous>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgICERendezvousGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgICERendezvousGlobalsTypeInternal CMsgICERendezvous_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgICERendezvous_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgICERendezvous_globals_.GetClassData();
#else
  return CMsgICERendezvous_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingP2PRendezvous_ReliableMessage::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous_ReliableMessage>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous_ReliableMessage::ParseTableT_ CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_._has_bits_),
      0, // no _extensions_
      1, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ReliableMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional .CMsgICERendezvous ice = 1;
      {::_pbi::TcParser::FastMtS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_.ice_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional .CMsgICERendezvous ice = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_.ice_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgICERendezvous>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgICERendezvous_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous_ReliableMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        ice_{nullptr} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous_ReliableMessage::CMsgSteamNetworkingP2PRendezvous_ReliableMessage(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ReliableMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous_ReliableMessage(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(CMsgSteamNetworkingP2PRendezvous_ReliableMessage), alignof(CMsgSteamNetworkingP2PRendezvous_ReliableMessage));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous_ReliableMessage::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous_ReliableMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous_ReliableMessage::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous_ReliableMessage>(), &CMsgSteamNetworkingP2PRendezvous_ReliableMessage::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous_ReliableMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[12],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvous_ReliableMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvous_ReliableMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ReliableMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvous_ReliableMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous_ReliableMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous_ReliableMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ReliableMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvous_ReliableMessageGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_ReliableMessage_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class CMsgSteamNetworkingP2PRendezvous::_Internal {
 public:
  using HasBits = decltype(::std::declval<CMsgSteamNetworkingP2PRendezvous>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_._has_bits_);
};

constexpr CMsgSteamNetworkingP2PRendezvous::ParseTableT_ CMsgSteamNetworkingP2PRendezvous::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_._has_bits_),
      0, // no _extensions_
      15, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294934528,  // skipmap
      offsetof(ParseTableT_, field_entries),
      15,  // num_field_entries
      5,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallback,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional fixed32 to_connection_id = 1;
      {::_pbi::TcParser::FastF32S1,
       {13, 9, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.to_connection_id_)}},
      // optional bytes sdr_routes = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.sdr_routes_)}},
      // optional uint32 ack_peer_routes_revision = 3;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_peer_routes_revision_), 10>(),
       {24, 10, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_peer_routes_revision_)}},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectRequest connect_request = 4;
      {::_pbi::TcParser::FastMtS1,
       {34, 6, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connect_request_)}},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectOK connect_ok = 5;
      {::_pbi::TcParser::FastMtS1,
       {42, 7, 1,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connect_ok_)}},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectionClosed connection_closed = 6;
      {::_pbi::TcParser::FastMtS1,
       {50, 8, 2,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connection_closed_)}},
      // optional bool ice_enabled = 7;
      {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(CMsgSteamNetworkingP2PRendezvous, _impl_.ice_enabled_), 11>(),
       {56, 11, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ice_enabled_)}},
      // optional string from_identity = 8;
      {::_pbi::TcParser::FastBS1,
       {66, 3, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.from_identity_)}},
      // optional fixed32 from_connection_id = 9;
      {::_pbi::TcParser::FastF32S1,
       {77, 12, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.from_connection_id_)}},
      // optional string to_identity = 10;
      {::_pbi::TcParser::FastBS1,
       {82, 4, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.to_identity_)}},
      // optional uint32 ack_reliable_msg = 11;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_reliable_msg_), 13>(),
       {88, 13, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_reliable_msg_)}},
      // optional uint32 first_reliable_msg = 12;
      {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CMsgSteamNetworkingP2PRendezvous, _impl_.first_reliable_msg_), 14>(),
       {96, 14, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.first_reliable_msg_)}},
      // repeated .CMsgSteamNetworkingP2PRendezvous.ReliableMessage reliable_messages = 13;
      {::_pbi::TcParser::FastMtR1,
       {106, 0, 3,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_)}},
      // optional bytes hosted_server_ticket = 14;
      {::_pbi::TcParser::FastBS1,
       {114, 5, 0,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.hosted_server_ticket_)}},
      // repeated .CMsgSteamNetworkingP2PRendezvous.ApplicationMessage application_messages = 15;
      {::_pbi::TcParser::FastMtR1,
       {122, 1, 4,
        PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional fixed32 to_connection_id = 1;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.to_connection_id_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kFixed32)},
      // optional bytes sdr_routes = 2;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.sdr_routes_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional uint32 ack_peer_routes_revision = 3;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_peer_routes_revision_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectRequest connect_request = 4;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connect_request_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectOK connect_ok = 5;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connect_ok_), _Internal::kHasBitsOffset + 7, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .CMsgSteamNetworkingP2PRendezvous.ConnectionClosed connection_closed = 6;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connection_closed_), _Internal::kHasBitsOffset + 8, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional bool ice_enabled = 7;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ice_enabled_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional string from_identity = 8;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.from_identity_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional fixed32 from_connection_id = 9;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.from_connection_id_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kFixed32)},
      // optional string to_identity = 10;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.to_identity_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional uint32 ack_reliable_msg = 11;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.ack_reliable_msg_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 first_reliable_msg = 12;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.first_reliable_msg_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // repeated .CMsgSteamNetworkingP2PRendezvous.ReliableMessage reliable_messages = 13;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_), _Internal::kHasBitsOffset + 0, 3, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional bytes hosted_server_ticket = 14;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.hosted_server_ticket_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .CMsgSteamNetworkingP2PRendezvous.ApplicationMessage application_messages = 15;
      {PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_), _Internal::kHasBitsOffset + 1, 4, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectRequest>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectOK>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ReliableMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr CMsgSteamNetworkingP2PRendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        reliable_messages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamNetworkingP2PRendezvous,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_)>()
         }
        ,
        application_messages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamNetworkingP2PRendezvous,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_)>()
         }
        ,
        sdr_routes_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        from_identity_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        to_identity_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        hosted_server_ticket_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        connect_request_{nullptr},
        connect_ok_{nullptr},
        connection_closed_{nullptr},
        to_connection_id_{0u},
        ack_peer_routes_revision_{0u},
        ice_enabled_{false},
        from_connection_id_{0u},
        ack_reliable_msg_{0u},
        first_reliable_msg_{0u} {}

template <typename>
constexpr CMsgSteamNetworkingP2PRendezvous::CMsgSteamNetworkingP2PRendezvous(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::Message(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) CMsgSteamNetworkingP2PRendezvous(arena);
}
constexpr auto CMsgSteamNetworkingP2PRendezvous::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(CMsgSteamNetworkingP2PRendezvous), alignof(CMsgSteamNetworkingP2PRendezvous));
}
constexpr auto CMsgSteamNetworkingP2PRendezvous::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataFull{
      ::google::protobuf::internal::ClassData{
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &CMsgSteamNetworkingP2PRendezvous::MergeImpl,
          ::google::protobuf::Message::GetNewImpl<CMsgSteamNetworkingP2PRendezvous>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &CMsgSteamNetworkingP2PRendezvous::SharedDtor,
          ::google::protobuf::Message::GetClearImpl<CMsgSteamNetworkingP2PRendezvous>(), &CMsgSteamNetworkingP2PRendezvous::ByteSizeLong,
              &CMsgSteamNetworkingP2PRendezvous::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_._cached_size_),
          false,
      },
#ifdef PROTOBUF_MESSAGE_GLOBALS
      &file_reflection_data[14],
#else   // !PROTOBUF_MESSAGE_GLOBALS
      &::_pbi::kDescriptorMethods,
      &descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
      nullptr,  // tracker
#endif  // PROTOBUF_MESSAGE_GLOBALS
  };
}
struct CMsgSteamNetworkingP2PRendezvousGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CMsgSteamNetworkingP2PRendezvousGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 CMsgSteamNetworkingP2PRendezvous_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(CMsgSteamNetworkingP2PRendezvous::InternalGenerateClassData_(
            _default, &CMsgSteamNetworkingP2PRendezvous_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CMsgSteamNetworkingP2PRendezvousGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) CMsgSteamNetworkingP2PRendezvous _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<CMsgSteamNetworkingP2PRendezvous>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvousGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST CMsgSteamNetworkingP2PRendezvousGlobalsTypeInternal CMsgSteamNetworkingP2PRendezvous_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* CMsgSteamNetworkingP2PRendezvous_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return CMsgSteamNetworkingP2PRendezvous_globals_.GetClassData();
#else
  return CMsgSteamNetworkingP2PRendezvous_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
static const ::_pb::EnumDescriptor* PROTOBUF_NONNULL
    file_level_enum_descriptors_steamnetworkingsockets_5fmessages_2eproto[2];
static constexpr const ::_pb::ServiceDescriptor* PROTOBUF_NONNULL* PROTOBUF_NULLABLE
    file_level_service_descriptors_steamnetworkingsockets_5fmessages_2eproto = nullptr;
const ::uint32_t
    TableStruct_steamnetworkingsockets_5fmessages_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
        protodesc_cold) = {
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_._has_bits_),
        8, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.key_type_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.key_data_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.nonce_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.protocol_version_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_),
        2,
        1,
        4,
        3,
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfoSigned, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfoSigned, _impl_.info_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfoSigned, _impl_.signature_),
        0,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramDiagnostic, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramDiagnostic, _impl_.severity_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramDiagnostic, _impl_.text_),
        1,
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_._has_bits_),
        11, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_packets_per_sec_x10_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_bytes_per_sec_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_packets_per_sec_x10_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.in_bytes_per_sec_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.ping_ms_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_dropped_pct_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.packets_weird_sequence_pct_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkInstantaneousStats, _impl_.peak_jitter_usec_),
        0,
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_._has_bits_),
        50, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.connected_seconds_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_sent_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_sent_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.kb_recv_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_sequenced_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_dropped_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_out_of_order_corrected_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_duplicate_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_recv_lurch_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_send_enabled_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_100_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_99_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_97_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_95_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_90_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_75_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_50_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_1_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_histogram_dead_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_2nd_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_5th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_25th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.quality_ntile_50th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_25_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_50_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_75_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_100_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_125_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_150_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_200_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_300_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_histogram_max_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_5th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_50th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_75th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_95th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.ping_ntile_98th_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_negligible_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_1_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_2_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_5_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_10_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_20_),
        8,
        2,
        3,
        4,
        5,
        6,
        7,
        10,
        13,
        11,
        12,
        0,
        1,
        9,
        14,
        15,
        16,
        17,
        18,
        19,
        20,
        21,
        22,
        23,
        24,
        25,
        26,
        30,
        31,
        32,
        33,
        34,
        35,
        36,
        37,
        38,
        27,
        28,
        29,
        39,
        40,
        41,
        42,
        43,
        44,
        45,
        46,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramConnectionQuality, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramConnectionQuality, _impl_.instantaneous_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramConnectionQuality, _impl_.lifetime_),
        0,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgICECandidate, _impl_._has_bits_),
        4, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgICECandidate, _impl_.candidate_),
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgICERendezvous_Auth, _impl_._has_bits_),
        4, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgICERendezvous_Auth, _impl_.pwd_frag_),
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgICERendezvous, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgICERendezvous, _impl_.auth_),
        PROTOBUF_FIELD_OFFSET(::CMsgICERendezvous, _impl_.add_candidate_),
        1,
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_._has_bits_),
        8, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.crypt_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.cert_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.to_virtual_port_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_virtual_port_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_fakeip_),
        1,
        2,
        3,
        4,
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.crypt_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.cert_),
        0,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_._has_bits_),
        5, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.debug_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed, _impl_.reason_code_),
        0,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_._has_bits_),
        4, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ReliableMessage, _impl_.ice_),
        0,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_._has_bits_),
        7, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.data_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.msg_num_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.flags_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.lane_idx_),
        0,
        1,
        2,
        3,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_._has_bits_),
        18, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.from_identity_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.from_connection_id_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.to_identity_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.to_connection_id_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.sdr_routes_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.ack_peer_routes_revision_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.ice_enabled_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.hosted_server_ticket_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.connect_request_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.connect_ok_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.connection_closed_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.ack_reliable_msg_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.first_reliable_msg_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_),
        3,
        12,
        4,
        9,
        2,
        10,
        11,
        5,
        6,
        7,
        8,
        13,
        14,
        0,
        1,
        0x081, // bitmap
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_._has_bits_),
        18, // hasbit index offset
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.failure_reason_code_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.remote_candidate_types_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.initial_route_kind_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.initial_ping_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.initial_score_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.negotiation_ms_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.best_route_kind_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.best_ping_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.best_score_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.best_time_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.selected_seconds_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.user_settings_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.ice_enable_var_),
        PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_allowed_),
        6,
        0,
        1,
        2,
        3,
        5,
        4,
        11,
        12,
        13,
        14,
        7,
        8,
        9,
        10,
};

static const ::_pbi::MigrationSchema
    schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
        {0, sizeof(::CMsgSteamDatagramSessionCryptInfo)},
        {13, sizeof(::CMsgSteamDatagramSessionCryptInfoSigned)},
        {20, sizeof(::CMsgSteamDatagramDiagnostic)},
        {27, sizeof(::CMsgSteamDatagramLinkInstantaneousStats)},
        {46, sizeof(::CMsgSteamDatagramLinkLifetimeStats)},
        {143, sizeof(::CMsgSteamDatagramConnectionQuality)},
        {150, sizeof(::CMsgICECandidate)},
        {155, sizeof(::CMsgICERendezvous_Auth)},
        {160, sizeof(::CMsgICERendezvous)},
        {167, sizeof(::CMsgSteamNetworkingP2PRendezvous_ConnectRequest)},
        {180, sizeof(::CMsgSteamNetworkingP2PRendezvous_ConnectOK)},
        {187, sizeof(::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed)},
        {194, sizeof(::CMsgSteamNetworkingP2PRendezvous_ReliableMessage)},
        {199, sizeof(::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage)},
        {210, sizeof(::CMsgSteamNetworkingP2PRendezvous)},
        {243, sizeof(::CMsgSteamNetworkingICESessionSummary)},
};
static const ::_pbi::MessageGlobalsBase* PROTOBUF_NONNULL const
    file_message_globals[] = {
        &::CMsgSteamDatagramSessionCryptInfo_globals_,
        &::CMsgSteamDatagramSessionCryptInfoSigned_globals_,
        &::CMsgSteamDatagramDiagnostic_globals_,
        &::CMsgSteamDatagramLinkInstantaneousStats_globals_,
        &::CMsgSteamDatagramLinkLifetimeStats_globals_,
        &::CMsgSteamDatagramConnectionQuality_globals_,
        &::CMsgICECandidate_globals_,
        &::CMsgICERendezvous_Auth_globals_,
        &::CMsgICERendezvous_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_,
        &::CMsgSteamNetworkingP2PRendezvous_globals_,
        &::CMsgSteamNetworkingICESessionSummary_globals_,
};
const char descriptor_table_protodef_steamnetworkingsockets_5fmessages_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
    protodesc_cold) = {
    "\n%steamnetworkingsockets_messages.proto\032"
    "+steamnetworkingsockets_messages_certs.p"
    "roto\"\367\001\n!CMsgSteamDatagramSessionCryptIn"
    "fo\022=\n\010key_type\030\001 \001(\0162+.CMsgSteamDatagram"
    "SessionCryptInfo.EKeyType\022\020\n\010key_data\030\002 "
    "\001(\014\022\r\n\005nonce\030\003 \001(\006\022\030\n\020protocol_version\030\004"
    " \001(\r\022/\n\007ciphers\030\005 \003(\0162\036.ESteamNetworking"
    "SocketsCipher\"\'\n\010EKeyType\022\013\n\007INVALID\020\000\022\016"
    "\n\nCURVE25519\020\001\"J\n\'CMsgSteamDatagramSessi"
    "onCryptInfoSigned\022\014\n\004info\030\001 \001(\014\022\021\n\tsigna"
    "ture\030\002 \001(\014\"=\n\033CMsgSteamDatagramDiagnosti"
    "c\022\020\n\010severity\030\001 \001(\r\022\014\n\004text\030\002 \001(\t\"\213\002\n\'CM"
    "sgSteamDatagramLinkInstantaneousStats\022\037\n"
    "\027out_packets_per_sec_x10\030\001 \001(\r\022\031\n\021out_by"
    "tes_per_sec\030\002 \001(\r\022\036\n\026in_packets_per_sec_"
    "x10\030\003 \001(\r\022\030\n\020in_bytes_per_sec\030\004 \001(\r\022\017\n\007p"
    "ing_ms\030\005 \001(\r\022\033\n\023packets_dropped_pct\030\006 \001("
    "\r\022\"\n\032packets_weird_sequence_pct\030\007 \001(\r\022\030\n"
    "\020peak_jitter_usec\030\010 \001(\r\"\355\n\n\"CMsgSteamDat"
    "agramLinkLifetimeStats\022\031\n\021connected_seco"
    "nds\030\002 \001(\r\022\024\n\014packets_sent\030\003 \001(\004\022\017\n\007kb_se"
    "nt\030\004 \001(\004\022\024\n\014packets_recv\030\005 \001(\004\022\017\n\007kb_rec"
    "v\030\006 \001(\004\022\036\n\026packets_recv_sequenced\030\007 \001(\004\022"
    "\034\n\024packets_recv_dropped\030\010 \001(\004\022!\n\031packets"
    "_recv_out_of_order\030\t \001(\004\022+\n#packets_recv"
    "_out_of_order_corrected\030\017 \001(\004\022\036\n\026packets"
    "_recv_duplicate\030\n \001(\004\022\032\n\022packets_recv_lu"
    "rch\030\013 \001(\004\022(\n multipath_packets_recv_sequ"
    "enced\030\014 \003(\004\022$\n\034multipath_packets_recv_la"
    "ter\030\r \003(\004\022\036\n\026multipath_send_enabled\030\016 \001("
    "\r\022\035\n\025quality_histogram_100\030\025 \001(\r\022\034\n\024qual"
    "ity_histogram_99\030\026 \001(\r\022\034\n\024quality_histog"
    "ram_97\030\027 \001(\r\022\034\n\024quality_histogram_95\030\030 \001"
    "(\r\022\034\n\024quality_histogram_90\030\031 \001(\r\022\034\n\024qual"
    "ity_histogram_75\030\032 \001(\r\022\034\n\024quality_histog"
    "ram_50\030\033 \001(\r\022\033\n\023quality_histogram_1\030\034 \001("
    "\r\022\036\n\026quality_histogram_dead\030\035 \001(\r\022\031\n\021qua"
    "lity_ntile_2nd\030\036 \001(\r\022\031\n\021quality_ntile_5t"
    "h\030\037 \001(\r\022\032\n\022quality_ntile_25th\030  \001(\r\022\032\n\022q"
    "uality_ntile_50th\030! \001(\r\022\031\n\021ping_histogra"
    "m_25\030) \001(\r\022\031\n\021ping_histogram_50\030* \001(\r\022\031\n"
    "\021ping_histogram_75\030+ \001(\r\022\032\n\022ping_histogr"
    "am_100\030, \001(\r\022\032\n\022ping_histogram_125\030- \001(\r"
    "\022\032\n\022ping_histogram_150\030. \001(\r\022\032\n\022ping_his"
    "togram_200\030/ \001(\r\022\032\n\022ping_histogram_300\0300"
    " \001(\r\022\032\n\022ping_histogram_max\0301 \001(\r\022\026\n\016ping"
    "_ntile_5th\0302 \001(\r\022\027\n\017ping_ntile_50th\0303 \001("
    "\r\022\027\n\017ping_ntile_75th\0304 \001(\r\022\027\n\017ping_ntile"
    "_95th\0305 \001(\r\022\027\n\017ping_ntile_98th\0306 \001(\r\022#\n\033"
    "jitter_histogram_negligible\030= \001(\r\022\032\n\022jit"
    "ter_histogram_1\030> \001(\r\022\032\n\022jitter_histogra"
    "m_2\030\? \001(\r\022\032\n\022jitter_histogram_5\030@ \001(\r\022\033\n"
    "\023jitter_histogram_10\030A \001(\r\022\033\n\023jitter_his"
    "togram_20\030B \001(\r\"\234\001\n\"CMsgSteamDatagramCon"
    "nectionQuality\022\?\n\rinstantaneous\030\001 \001(\0132(."
    "CMsgSteamDatagramLinkInstantaneousStats\022"
    "5\n\010lifetime\030\002 \001(\0132#.CMsgSteamDatagramLin"
    "kLifetimeStats\"%\n\020CMsgICECandidate\022\021\n\tca"
    "ndidate\030\003 \001(\t\"~\n\021CMsgICERendezvous\022%\n\004au"
    "th\030\002 \001(\0132\027.CMsgICERendezvous.Auth\022(\n\radd"
    "_candidate\030\001 \001(\0132\021.CMsgICECandidate\032\030\n\004A"
    "uth\022\020\n\010pwd_frag\030\001 \001(\t\"\243\t\n CMsgSteamNetwo"
    "rkingP2PRendezvous\022\025\n\rfrom_identity\030\010 \001("
    "\t\022\032\n\022from_connection_id\030\t \001(\007\022\023\n\013to_iden"
    "tity\030\n \001(\t\022\030\n\020to_connection_id\030\001 \001(\007\022\022\n\n"
    "sdr_routes\030\002 \001(\014\022 \n\030ack_peer_routes_revi"
    "sion\030\003 \001(\r\022\023\n\013ice_enabled\030\007 \001(\010\022\034\n\024hoste"
    "d_server_ticket\030\016 \001(\014\022I\n\017connect_request"
    "\030\004 \001(\01320.CMsgSteamNetworkingP2PRendezvou"
    "s.ConnectRequest\022\?\n\nconnect_ok\030\005 \001(\0132+.C"
    "MsgSteamNetworkingP2PRendezvous.ConnectO"
    "K\022M\n\021connection_closed\030\006 \001(\01322.CMsgSteam"
    "NetworkingP2PRendezvous.ConnectionClosed"
    "\022\030\n\020ack_reliable_msg\030\013 \001(\r\022\032\n\022first_reli"
    "able_msg\030\014 \001(\r\022L\n\021reliable_messages\030\r \003("
    "\01321.CMsgSteamNetworkingP2PRendezvous.Rel"
    "iableMessage\022R\n\024application_messages\030\017 \003"
    "(\01324.CMsgSteamNetworkingP2PRendezvous.Ap"
    "plicationMessage\032\305\001\n\016ConnectRequest\0227\n\005c"
    "rypt\030\006 \001(\0132(.CMsgSteamDatagramSessionCry"
    "ptInfoSigned\0221\n\004cert\030\007 \001(\0132#.CMsgSteamDa"
    "tagramCertificateSigned\022\027\n\017to_virtual_po"
    "rt\030\t \001(\r\022\031\n\021from_virtual_port\030\n \001(\r\022\023\n\013f"
    "rom_fakeip\030\013 \001(\t\032w\n\tConnectOK\0227\n\005crypt\030\005"
    " \001(\0132(.CMsgSteamDatagramSessionCryptInfo"
    "Signed\0221\n\004cert\030\006 \001(\0132#.CMsgSteamDatagram"
    "CertificateSigned\0326\n\020ConnectionClosed\022\r\n"
    "\005debug\030\005 \001(\t\022\023\n\013reason_code\030\006 \001(\r\0322\n\017Rel"
    "iableMessage\022\037\n\003ice\030\001 \001(\0132\022.CMsgICERende"
    "zvous\032T\n\022ApplicationMessage\022\014\n\004data\030\001 \001("
    "\014\022\017\n\007msg_num\030\002 \001(\004\022\r\n\005flags\030\003 \001(\r\022\020\n\010lan"
    "e_idx\030\004 \001(\r\"\246\003\n$CMsgSteamNetworkingICESe"
    "ssionSummary\022\033\n\023failure_reason_code\030\007 \001("
    "\r\022\035\n\025local_candidate_types\030\001 \001(\r\022\036\n\026remo"
    "te_candidate_types\030\002 \001(\r\022\032\n\022initial_rout"
    "e_kind\030\003 \001(\r\022\024\n\014initial_ping\030\004 \001(\r\022\025\n\rin"
    "itial_score\030\006 \001(\r\022\026\n\016negotiation_ms\030\005 \001("
    "\r\022\027\n\017best_route_kind\030\020 \001(\r\022\021\n\tbest_ping\030"
    "\021 \001(\r\022\022\n\nbest_score\030\022 \001(\r\022\021\n\tbest_time\030\023"
    " \001(\r\022\030\n\020selected_seconds\030\014 \001(\r\022\025\n\ruser_s"
    "ettings\030\r \001(\r\022\026\n\016ice_enable_var\030\016 \001(\r\022%\n"
    "\035local_candidate_types_allowed\030\017 \001(\r*\336\001\n"
    "\035ESteamNetworkingSocketsCipher\022+\n\'k_ESte"
    "amNetworkingSocketsCipher_INVALID\020\000\022(\n$k"
    "_ESteamNetworkingSocketsCipher_NULL\020\001\022/\n"
    "+k_ESteamNetworkingSocketsCipher_AES_256"
    "_GCM\020\002\0225\n1k_ESteamNetworkingSocketsCiphe"
    "r_CHACHA20_POLY1305\020\003B\005H\001\200\001\000"
};
static const ::_pbi::DescriptorTable* PROTOBUF_NONNULL const
    descriptor_table_steamnetworkingsockets_5fmessages_2eproto_deps[1] = {
        &::descriptor_table_steamnetworkingsockets_5fmessages_5fcerts_2eproto,
};
static ::absl::once_flag descriptor_table_steamnetworkingsockets_5fmessages_2eproto_once;
PROTOBUF_CONSTINIT const ::_pbi::DescriptorTable descriptor_table_steamnetworkingsockets_5fmessages_2eproto = {
    false,
    false,
    4308,
    descriptor_table_protodef_steamnetworkingsockets_5fmessages_2eproto,
    "steamnetworkingsockets_messages.proto",
    &descriptor_table_steamnetworkingsockets_5fmessages_2eproto_once,
    descriptor_table_steamnetworkingsockets_5fmessages_2eproto_deps,
    1,
    16,
    schemas,
    file_message_globals,
    TableStruct_steamnetworkingsockets_5fmessages_2eproto::offsets,
    file_level_enum_descriptors_steamnetworkingsockets_5fmessages_2eproto,
    file_level_service_descriptors_steamnetworkingsockets_5fmessages_2eproto,
};
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
CMsgSteamDatagramSessionCryptInfo_EKeyType_descriptor() {
  ::google::protobuf::internal::AssignDescriptors(&descriptor_table_steamnetworkingsockets_5fmessages_2eproto);
  return file_level_enum_descriptors_steamnetworkingsockets_5fmessages_2eproto[0];
}
PROTOBUF_CONSTINIT const uint32_t CMsgSteamDatagramSessionCryptInfo_EKeyType_internal_data_[] = {
    131072u, 0u, };
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
ESteamNetworkingSocketsCipher_descriptor() {
  ::google::protobuf::internal::AssignDescriptors(&descriptor_table_steamnetworkingsockets_5fmessages_2eproto);
  return file_level_enum_descriptors_steamnetworkingsockets_5fmessages_2eproto[1];
}
PROTOBUF_CONSTINIT const uint32_t ESteamNetworkingSocketsCipher_internal_data_[] = {
    262144u, 0u, };
// ===================================================================

CMsgSteamDatagramSessionCryptInfo::CMsgSteamDatagramSessionCryptInfo(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramSessionCryptInfo_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramSessionCryptInfo)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramSessionCryptInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamDatagramSessionCryptInfo& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        ciphers_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::CMsgSteamDatagramSessionCryptInfo,
              PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_)>()
          , from.ciphers_
        }
        ,
        key_data_(arena, from.key_data_) {}

CMsgSteamDatagramSessionCryptInfo::CMsgSteamDatagramSessionCryptInfo(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamDatagramSessionCryptInfo& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramSessionCryptInfo_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamDatagramSessionCryptInfo* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, key_type_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, key_type_),
           offsetof(Impl_, nonce_) -
               offsetof(Impl_, key_type_) +
               sizeof(Impl_::nonce_));

  // @@protoc_insertion_point(copy_constructor:CMsgSteamDatagramSessionCryptInfo)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramSessionCryptInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        ciphers_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramSessionCryptInfo,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramSessionCryptInfo, _impl_.ciphers_)>()
         }
        ,
        key_data_(arena) {}

inline void CMsgSteamDatagramSessionCryptInfo::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, key_type_),
           0,
           offsetof(Impl_, nonce_) -
               offsetof(Impl_, key_type_) +
               sizeof(Impl_::nonce_));
}
CMsgSteamDatagramSessionCryptInfo::~CMsgSteamDatagramSessionCryptInfo() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramSessionCryptInfo)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramSessionCryptInfo::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramSessionCryptInfo& this_ = static_cast<CMsgSteamDatagramSessionCryptInfo&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.key_data_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramSessionCryptInfo_class_data_ =
        CMsgSteamDatagramSessionCryptInfo::InternalGenerateClassData_(CMsgSteamDatagramSessionCryptInfo_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramSessionCryptInfo::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramSessionCryptInfo_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramSessionCryptInfo_class_data_.tc_table);
  return CMsgSteamDatagramSessionCryptInfo_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramSessionCryptInfo::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramSessionCryptInfo_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramSessionCryptInfo_globals_));
  return CMsgSteamDatagramSessionCryptInfo_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramSessionCryptInfo::ParseTableT_
    CMsgSteamDatagramSessionCryptInfo::_table_ =
        CMsgSteamDatagramSessionCryptInfo::InternalGenerateParseTable_(CMsgSteamDatagramSessionCryptInfo_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramSessionCryptInfo::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramSessionCryptInfo)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.ciphers_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.key_data_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000001cU)) {
    ::memset(&_impl_.key_type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.nonce_) -
        reinterpret_cast<char*>(&_impl_.key_type_)) + sizeof(_impl_.nonce_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfo::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramSessionCryptInfo& this_ = static_cast<const CMsgSteamDatagramSessionCryptInfo&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfo::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramSessionCryptInfo& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramSessionCryptInfo)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgSteamDatagramSessionCryptInfo.EKeyType key_type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
        1, this_._internal_key_type(), target);
  }

  // optional bytes key_data = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_key_data();
    target = stream->WriteBytesMaybeAliased(2, _s, target);
  }

  // optional fixed64 nonce = 3;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed64ToArray(
        3, this_._internal_nonce(), target);
  }

  // optional uint32 protocol_version = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        4, this_._internal_protocol_version(), target);
  }

  // repeated .ESteamNetworkingSocketsCipher ciphers = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_ciphers_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteEnumToArray(
          5, static_cast<::ESteamNetworkingSocketsCipher>(this_._internal_ciphers().Get(i)),
          target);
    }
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramSessionCryptInfo)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramSessionCryptInfo::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramSessionCryptInfo& this_ = static_cast<const CMsgSteamDatagramSessionCryptInfo&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramSessionCryptInfo::ByteSizeLong() const {
  const CMsgSteamDatagramSessionCryptInfo& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramSessionCryptInfo)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00000010U & cached_has_bits) * 9;
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // repeated .ESteamNetworkingSocketsCipher ciphers = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ::size_t data_size =
          ::_pbi::WireFormatLite::EnumSize(this_._internal_ciphers());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_ciphers_size());
      total_size += data_size + tag_size;
    }
    // optional bytes key_data = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_key_data());
    }
    // optional .CMsgSteamDatagramSessionCryptInfo.EKeyType key_type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 +
                    ::_pbi::WireFormatLite::EnumSize(this_._internal_key_type());
    }
    // optional uint32 protocol_version = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_protocol_version());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramSessionCryptInfo::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramSessionCryptInfo*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramSessionCryptInfo&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramSessionCryptInfo)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_ciphers()->MergeFrom(from._internal_ciphers());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_key_data(from._internal_key_data());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.key_type_ = from._impl_.key_type_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.protocol_version_ = from._impl_.protocol_version_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.nonce_ = from._impl_.nonce_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramSessionCryptInfo::InternalSwap(CMsgSteamDatagramSessionCryptInfo* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.ciphers_.InternalSwap(&other->_impl_.ciphers_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.key_data_, &other->_impl_.key_data_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.nonce_)
      + sizeof(CMsgSteamDatagramSessionCryptInfo::_impl_.nonce_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramSessionCryptInfo, _impl_.key_type_)>(
          reinterpret_cast<char*>(&_impl_.key_type_),
          reinterpret_cast<char*>(&other->_impl_.key_type_));
}

::google::protobuf::Metadata CMsgSteamDatagramSessionCryptInfo::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamDatagramSessionCryptInfoSigned::CMsgSteamDatagramSessionCryptInfoSigned(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramSessionCryptInfoSigned_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramSessionCryptInfoSigned)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramSessionCryptInfoSigned::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamDatagramSessionCryptInfoSigned& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        info_(arena, from.info_),
        signature_(arena, from.signature_) {}

CMsgSteamDatagramSessionCryptInfoSigned::CMsgSteamDatagramSessionCryptInfoSigned(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamDatagramSessionCryptInfoSigned& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramSessionCryptInfoSigned_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamDatagramSessionCryptInfoSigned* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);

  // @@protoc_insertion_point(copy_constructor:CMsgSteamDatagramSessionCryptInfoSigned)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramSessionCryptInfoSigned::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        info_(arena),
        signature_(arena) {}

inline void CMsgSteamDatagramSessionCryptInfoSigned::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
CMsgSteamDatagramSessionCryptInfoSigned::~CMsgSteamDatagramSessionCryptInfoSigned() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramSessionCryptInfoSigned)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramSessionCryptInfoSigned::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramSessionCryptInfoSigned& this_ = static_cast<CMsgSteamDatagramSessionCryptInfoSigned&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.info_.Destroy();
  this_._impl_.signature_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramSessionCryptInfoSigned_class_data_ =
        CMsgSteamDatagramSessionCryptInfoSigned::InternalGenerateClassData_(CMsgSteamDatagramSessionCryptInfoSigned_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramSessionCryptInfoSigned::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramSessionCryptInfoSigned_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramSessionCryptInfoSigned_class_data_.tc_table);
  return CMsgSteamDatagramSessionCryptInfoSigned_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramSessionCryptInfoSigned::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramSessionCryptInfoSigned_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramSessionCryptInfoSigned_globals_));
  return CMsgSteamDatagramSessionCryptInfoSigned_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramSessionCryptInfoSigned::ParseTableT_
    CMsgSteamDatagramSessionCryptInfoSigned::_table_ =
        CMsgSteamDatagramSessionCryptInfoSigned::InternalGenerateParseTable_(CMsgSteamDatagramSessionCryptInfoSigned_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramSessionCryptInfoSigned::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramSessionCryptInfoSigned)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.info_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.signature_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfoSigned::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramSessionCryptInfoSigned& this_ = static_cast<const CMsgSteamDatagramSessionCryptInfoSigned&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramSessionCryptInfoSigned::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramSessionCryptInfoSigned& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramSessionCryptInfoSigned)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional bytes info = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_info();
    target = stream->WriteBytesMaybeAliased(1, _s, target);
  }

  // optional bytes signature = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_signature();
    target = stream->WriteBytesMaybeAliased(2, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramSessionCryptInfoSigned)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramSessionCryptInfoSigned::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramSessionCryptInfoSigned& this_ = static_cast<const CMsgSteamDatagramSessionCryptInfoSigned&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramSessionCryptInfoSigned::ByteSizeLong() const {
  const CMsgSteamDatagramSessionCryptInfoSigned& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramSessionCryptInfoSigned)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional bytes info = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_info());
    }
    // optional bytes signature = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_signature());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramSessionCryptInfoSigned::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramSessionCryptInfoSigned*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramSessionCryptInfoSigned&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramSessionCryptInfoSigned)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_info(from._internal_info());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_signature(from._internal_signature());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramSessionCryptInfoSigned::InternalSwap(CMsgSteamDatagramSessionCryptInfoSigned* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.info_, &other->_impl_.info_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.signature_, &other->_impl_.signature_, arena);
}

::google::protobuf::Metadata CMsgSteamDatagramSessionCryptInfoSigned::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamDatagramDiagnostic::CMsgSteamDatagramDiagnostic(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramDiagnostic_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramDiagnostic)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramDiagnostic::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamDatagramDiagnostic& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        text_(arena, from.text_) {}

CMsgSteamDatagramDiagnostic::CMsgSteamDatagramDiagnostic(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamDatagramDiagnostic& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramDiagnostic_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamDatagramDiagnostic* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  _impl_.severity_ = from._impl_.severity_;

  // @@protoc_insertion_point(copy_constructor:CMsgSteamDatagramDiagnostic)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramDiagnostic::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        text_(arena) {}

inline void CMsgSteamDatagramDiagnostic::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.severity_ = {};
}
CMsgSteamDatagramDiagnostic::~CMsgSteamDatagramDiagnostic() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramDiagnostic)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramDiagnostic::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramDiagnostic& this_ = static_cast<CMsgSteamDatagramDiagnostic&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.text_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramDiagnostic_class_data_ =
        CMsgSteamDatagramDiagnostic::InternalGenerateClassData_(CMsgSteamDatagramDiagnostic_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramDiagnostic::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramDiagnostic_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramDiagnostic_class_data_.tc_table);
  return CMsgSteamDatagramDiagnostic_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramDiagnostic::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramDiagnostic_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramDiagnostic_globals_));
  return CMsgSteamDatagramDiagnostic_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramDiagnostic::ParseTableT_
    CMsgSteamDatagramDiagnostic::_table_ =
        CMsgSteamDatagramDiagnostic::InternalGenerateParseTable_(CMsgSteamDatagramDiagnostic_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramDiagnostic::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramDiagnostic)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.text_.ClearNonDefaultToEmpty();
  }
  _impl_.severity_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramDiagnostic::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramDiagnostic& this_ = static_cast<const CMsgSteamDatagramDiagnostic&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramDiagnostic::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramDiagnostic& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramDiagnostic)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint32 severity = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        1, this_._internal_severity(), target);
  }

  // optional string text = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_text();
    target = stream->WriteStringMaybeAliased(2, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramDiagnostic)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramDiagnostic::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramDiagnostic& this_ = static_cast<const CMsgSteamDatagramDiagnostic&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramDiagnostic::ByteSizeLong() const {
  const CMsgSteamDatagramDiagnostic& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramDiagnostic)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional string text = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_text());
    }
    // optional uint32 severity = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_severity());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramDiagnostic::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramDiagnostic*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramDiagnostic&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramDiagnostic)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_text(from._internal_text());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.severity_ = from._impl_.severity_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramDiagnostic::InternalSwap(CMsgSteamDatagramDiagnostic* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.text_, &other->_impl_.text_, arena);
  swap(_impl_.severity_, other->_impl_.severity_);
}

::google::protobuf::Metadata CMsgSteamDatagramDiagnostic::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamDatagramLinkInstantaneousStats::CMsgSteamDatagramLinkInstantaneousStats(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramLinkInstantaneousStats_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramLinkInstantaneousStats)
}
CMsgSteamDatagramLinkInstantaneousStats::CMsgSteamDatagramLinkInstantaneousStats(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CMsgSteamDatagramLinkInstantaneousStats& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramLinkInstantaneousStats_get_class_data()),
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena),
#endif  // PROTOBUF_CUSTOM_VTABLE
      _impl_(from._impl_) {
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramLinkInstantaneousStats::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgSteamDatagramLinkInstantaneousStats::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, out_packets_per_sec_x10_),
           0,
           offsetof(Impl_, peak_jitter_usec_) -
               offsetof(Impl_, out_packets_per_sec_x10_) +
               sizeof(Impl_::peak_jitter_usec_));
}
CMsgSteamDatagramLinkInstantaneousStats::~CMsgSteamDatagramLinkInstantaneousStats() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramLinkInstantaneousStats)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramLinkInstantaneousStats::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramLinkInstantaneousStats& this_ = static_cast<CMsgSteamDatagramLinkInstantaneousStats&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramLinkInstantaneousStats_class_data_ =
        CMsgSteamDatagramLinkInstantaneousStats::InternalGenerateClassData_(CMsgSteamDatagramLinkInstantaneousStats_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramLinkInstantaneousStats::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramLinkInstantaneousStats_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramLinkInstantaneousStats_class_data_.tc_table);
  return CMsgSteamDatagramLinkInstantaneousStats_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramLinkInstantaneousStats::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramLinkInstantaneousStats_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramLinkInstantaneousStats_globals_));
  return CMsgSteamDatagramLinkInstantaneousStats_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramLinkInstantaneousStats::ParseTableT_
    CMsgSteamDatagramLinkInstantaneousStats::_table_ =
        CMsgSteamDatagramLinkInstantaneousStats::InternalGenerateParseTable_(CMsgSteamDatagramLinkInstantaneousStats_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramLinkInstantaneousStats::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramLinkInstantaneousStats)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    ::memset(&_impl_.out_packets_per_sec_x10_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.peak_jitter_usec_) -
        reinterpret_cast<char*>(&_impl_.out_packets_per_sec_x10_)) + sizeof(_impl_.peak_jitter_usec_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramLinkInstantaneousStats::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramLinkInstantaneousStats& this_ = static_cast<const CMsgSteamDatagramLinkInstantaneousStats&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramLinkInstantaneousStats::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramLinkInstantaneousStats& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramLinkInstantaneousStats)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint32 out_packets_per_sec_x10 = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        1, this_._internal_out_packets_per_sec_x10(), target);
  }

  // optional uint32 out_bytes_per_sec = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        2, this_._internal_out_bytes_per_sec(), target);
  }

  // optional uint32 in_packets_per_sec_x10 = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        3, this_._internal_in_packets_per_sec_x10(), target);
  }

  // optional uint32 in_bytes_per_sec = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        4, this_._internal_in_bytes_per_sec(), target);
  }

  // optional uint32 ping_ms = 5;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        5, this_._internal_ping_ms(), target);
  }

  // optional uint32 packets_dropped_pct = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        6, this_._internal_packets_dropped_pct(), target);
  }

  // optional uint32 packets_weird_sequence_pct = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        7, this_._internal_packets_weird_sequence_pct(), target);
  }

  // optional uint32 peak_jitter_usec = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        8, this_._internal_peak_jitter_usec(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramLinkInstantaneousStats)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramLinkInstantaneousStats::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramLinkInstantaneousStats& this_ = static_cast<const CMsgSteamDatagramLinkInstantaneousStats&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramLinkInstantaneousStats::ByteSizeLong() const {
  const CMsgSteamDatagramLinkInstantaneousStats& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramLinkInstantaneousStats)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // optional uint32 out_packets_per_sec_x10 = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_out_packets_per_sec_x10());
    }
    // optional uint32 out_bytes_per_sec = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_out_bytes_per_sec());
    }
    // optional uint32 in_packets_per_sec_x10 = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_in_packets_per_sec_x10());
    }
    // optional uint32 in_bytes_per_sec = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_in_bytes_per_sec());
    }
    // optional uint32 ping_ms = 5;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_ping_ms());
    }
    // optional uint32 packets_dropped_pct = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_packets_dropped_pct());
    }
    // optional uint32 packets_weird_sequence_pct = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_packets_weird_sequence_pct());
    }
    // optional uint32 peak_jitter_usec = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_peak_jitter_usec());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramLinkInstantaneousStats::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramLinkInstantaneousStats*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramLinkInstantaneousStats&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramLinkInstantaneousStats)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.out_packets_per_sec_x10_ = from._impl_.out_packets_per_sec_x10_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.out_bytes_per_sec_ = from._impl_.out_bytes_per_sec_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.in_packets_per_sec_x10_ = from._impl_.in_packets_per_sec_x10_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.in_bytes_per_sec_ = from._impl_.in_bytes_per_sec_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.ping_ms_ = from._impl_.ping_ms_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.packets_dropped_pct_ = from._impl_.packets_dropped_pct_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.packets_weird_sequence_pct_ = from._impl_.packets_weird_sequence_pct_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.peak_jitter_usec_ = from._impl_.peak_jitter_usec_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramLinkInstantaneousStats::InternalSwap(CMsgSteamDatagramLinkInstantaneousStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.peak_jitter_usec_)
      + sizeof(CMsgSteamDatagramLinkInstantaneousStats::_impl_.peak_jitter_usec_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkInstantaneousStats, _impl_.out_packets_per_sec_x10_)>(
          reinterpret_cast<char*>(&_impl_.out_packets_per_sec_x10_),
          reinterpret_cast<char*>(&other->_impl_.out_packets_per_sec_x10_));
}

::google::protobuf::Metadata CMsgSteamDatagramLinkInstantaneousStats::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamDatagramLinkLifetimeStats::CMsgSteamDatagramLinkLifetimeStats(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramLinkLifetimeStats_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramLinkLifetimeStats)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramLinkLifetimeStats::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamDatagramLinkLifetimeStats& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        multipath_packets_recv_sequenced_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::CMsgSteamDatagramLinkLifetimeStats,
              PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_)>()
          , from.multipath_packets_recv_sequenced_
        }
        ,
        multipath_packets_recv_later_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::CMsgSteamDatagramLinkLifetimeStats,
              PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_)>()
          , from.multipath_packets_recv_later_
        }
     {}

CMsgSteamDatagramLinkLifetimeStats::CMsgSteamDatagramLinkLifetimeStats(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamDatagramLinkLifetimeStats& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramLinkLifetimeStats_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamDatagramLinkLifetimeStats* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, packets_sent_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, packets_sent_),
           offsetof(Impl_, jitter_histogram_20_) -
               offsetof(Impl_, packets_sent_) +
               sizeof(Impl_::jitter_histogram_20_));

  // @@protoc_insertion_point(copy_constructor:CMsgSteamDatagramLinkLifetimeStats)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramLinkLifetimeStats::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        multipath_packets_recv_sequenced_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramLinkLifetimeStats,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_sequenced_)>()
         }
        ,
        multipath_packets_recv_later_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamDatagramLinkLifetimeStats,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamDatagramLinkLifetimeStats, _impl_.multipath_packets_recv_later_)>()
         }
     {}

inline void CMsgSteamDatagramLinkLifetimeStats::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, packets_sent_),
           0,
           offsetof(Impl_, jitter_histogram_20_) -
               offsetof(Impl_, packets_sent_) +
               sizeof(Impl_::jitter_histogram_20_));
}
CMsgSteamDatagramLinkLifetimeStats::~CMsgSteamDatagramLinkLifetimeStats() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramLinkLifetimeStats)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramLinkLifetimeStats::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramLinkLifetimeStats& this_ = static_cast<CMsgSteamDatagramLinkLifetimeStats&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramLinkLifetimeStats_class_data_ =
        CMsgSteamDatagramLinkLifetimeStats::InternalGenerateClassData_(CMsgSteamDatagramLinkLifetimeStats_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramLinkLifetimeStats::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramLinkLifetimeStats_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramLinkLifetimeStats_class_data_.tc_table);
  return CMsgSteamDatagramLinkLifetimeStats_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramLinkLifetimeStats::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramLinkLifetimeStats_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramLinkLifetimeStats_globals_));
  return CMsgSteamDatagramLinkLifetimeStats_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramLinkLifetimeStats::ParseTableT_
    CMsgSteamDatagramLinkLifetimeStats::_table_ =
        CMsgSteamDatagramLinkLifetimeStats::InternalGenerateParseTable_(CMsgSteamDatagramLinkLifetimeStats_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramLinkLifetimeStats::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramLinkLifetimeStats)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.multipath_packets_recv_sequenced_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.multipath_packets_recv_later_.Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000fcU)) {
    ::memset(&_impl_.packets_sent_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.packets_recv_dropped_) -
        reinterpret_cast<char*>(&_impl_.packets_sent_)) + sizeof(_impl_.packets_recv_dropped_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    ::memset(&_impl_.connected_seconds_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.quality_histogram_99_) -
        reinterpret_cast<char*>(&_impl_.connected_seconds_)) + sizeof(_impl_.quality_histogram_99_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    ::memset(&_impl_.quality_histogram_97_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.quality_ntile_2nd_) -
        reinterpret_cast<char*>(&_impl_.quality_histogram_97_)) + sizeof(_impl_.quality_ntile_2nd_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    ::memset(&_impl_.quality_ntile_5th_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.ping_histogram_50_) -
        reinterpret_cast<char*>(&_impl_.quality_ntile_5th_)) + sizeof(_impl_.ping_histogram_50_));
  }
  cached_has_bits = _impl_._has_bits_[1];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    ::memset(&_impl_.ping_histogram_75_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.ping_ntile_95th_) -
        reinterpret_cast<char*>(&_impl_.ping_histogram_75_)) + sizeof(_impl_.ping_ntile_95th_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    ::memset(&_impl_.ping_ntile_98th_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.jitter_histogram_20_) -
        reinterpret_cast<char*>(&_impl_.ping_ntile_98th_)) + sizeof(_impl_.jitter_histogram_20_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramLinkLifetimeStats::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramLinkLifetimeStats& this_ = static_cast<const CMsgSteamDatagramLinkLifetimeStats&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramLinkLifetimeStats::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramLinkLifetimeStats& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramLinkLifetimeStats)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint32 connected_seconds = 2;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        2, this_._internal_connected_seconds(), target);
  }

  // optional uint64 packets_sent = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        3, this_._internal_packets_sent(), target);
  }

  // optional uint64 kb_sent = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        4, this_._internal_kb_sent(), target);
  }

  // optional uint64 packets_recv = 5;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        5, this_._internal_packets_recv(), target);
  }

  // optional uint64 kb_recv = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        6, this_._internal_kb_recv(), target);
  }

  // optional uint64 packets_recv_sequenced = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        7, this_._internal_packets_recv_sequenced(), target);
  }

  // optional uint64 packets_recv_dropped = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        8, this_._internal_packets_recv_dropped(), target);
  }

  // optional uint64 packets_recv_out_of_order = 9;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        9, this_._internal_packets_recv_out_of_order(), target);
  }

  // optional uint64 packets_recv_duplicate = 10;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        10, this_._internal_packets_recv_duplicate(), target);
  }

  // optional uint64 packets_recv_lurch = 11;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        11, this_._internal_packets_recv_lurch(), target);
  }

  // repeated uint64 multipath_packets_recv_sequenced = 12;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_multipath_packets_recv_sequenced_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          12, this_._internal_multipath_packets_recv_sequenced().Get(i), target);
    }
  }

  // repeated uint64 multipath_packets_recv_later = 13;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (int i = 0, n = this_._internal_multipath_packets_recv_later_size(); i < n; ++i) {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          13, this_._internal_multipath_packets_recv_later().Get(i), target);
    }
  }

  // optional uint32 multipath_send_enabled = 14;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        14, this_._internal_multipath_send_enabled(), target);
  }

  // optional uint64 packets_recv_out_of_order_corrected = 15;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        15, this_._internal_packets_recv_out_of_order_corrected(), target);
  }

  // optional uint32 quality_histogram_100 = 21;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        21, this_._internal_quality_histogram_100(), target);
  }

  // optional uint32 quality_histogram_99 = 22;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        22, this_._internal_quality_histogram_99(), target);
  }

  // optional uint32 quality_histogram_97 = 23;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        23, this_._internal_quality_histogram_97(), target);
  }

  // optional uint32 quality_histogram_95 = 24;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        24, this_._internal_quality_histogram_95(), target);
  }

  // optional uint32 quality_histogram_90 = 25;
  if (CheckHasBit(cached_has_bits, 0x00040000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        25, this_._internal_quality_histogram_90(), target);
  }

  // optional uint32 quality_histogram_75 = 26;
  if (CheckHasBit(cached_has_bits, 0x00080000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        26, this_._internal_quality_histogram_75(), target);
  }

  // optional uint32 quality_histogram_50 = 27;
  if (CheckHasBit(cached_has_bits, 0x00100000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        27, this_._internal_quality_histogram_50(), target);
  }

  // optional uint32 quality_histogram_1 = 28;
  if (CheckHasBit(cached_has_bits, 0x00200000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        28, this_._internal_quality_histogram_1(), target);
  }

  // optional uint32 quality_histogram_dead = 29;
  if (CheckHasBit(cached_has_bits, 0x00400000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        29, this_._internal_quality_histogram_dead(), target);
  }

  // optional uint32 quality_ntile_2nd = 30;
  if (CheckHasBit(cached_has_bits, 0x00800000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        30, this_._internal_quality_ntile_2nd(), target);
  }

  // optional uint32 quality_ntile_5th = 31;
  if (CheckHasBit(cached_has_bits, 0x01000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        31, this_._internal_quality_ntile_5th(), target);
  }

  // optional uint32 quality_ntile_25th = 32;
  if (CheckHasBit(cached_has_bits, 0x02000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        32, this_._internal_quality_ntile_25th(), target);
  }

  // optional uint32 quality_ntile_50th = 33;
  if (CheckHasBit(cached_has_bits, 0x04000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        33, this_._internal_quality_ntile_50th(), target);
  }

  // optional uint32 ping_histogram_25 = 41;
  if (CheckHasBit(cached_has_bits, 0x40000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        41, this_._internal_ping_histogram_25(), target);
  }

  // optional uint32 ping_histogram_50 = 42;
  if (CheckHasBit(cached_has_bits, 0x80000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        42, this_._internal_ping_histogram_50(), target);
  }

  cached_has_bits = this_._impl_._has_bits_[1];
  // optional uint32 ping_histogram_75 = 43;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        43, this_._internal_ping_histogram_75(), target);
  }

  // optional uint32 ping_histogram_100 = 44;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        44, this_._internal_ping_histogram_100(), target);
  }

  // optional uint32 ping_histogram_125 = 45;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        45, this_._internal_ping_histogram_125(), target);
  }

  // optional uint32 ping_histogram_150 = 46;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        46, this_._internal_ping_histogram_150(), target);
  }

  // optional uint32 ping_histogram_200 = 47;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        47, this_._internal_ping_histogram_200(), target);
  }

  // optional uint32 ping_histogram_300 = 48;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        48, this_._internal_ping_histogram_300(), target);
  }

  // optional uint32 ping_histogram_max = 49;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        49, this_._internal_ping_histogram_max(), target);
  }

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint32 ping_ntile_5th = 50;
  if (CheckHasBit(cached_has_bits, 0x08000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        50, this_._internal_ping_ntile_5th(), target);
  }

  // optional uint32 ping_ntile_50th = 51;
  if (CheckHasBit(cached_has_bits, 0x10000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        51, this_._internal_ping_ntile_50th(), target);
  }

  // optional uint32 ping_ntile_75th = 52;
  if (CheckHasBit(cached_has_bits, 0x20000000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        52, this_._internal_ping_ntile_75th(), target);
  }

  cached_has_bits = this_._impl_._has_bits_[1];
  // optional uint32 ping_ntile_95th = 53;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        53, this_._internal_ping_ntile_95th(), target);
  }

  // optional uint32 ping_ntile_98th = 54;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        54, this_._internal_ping_ntile_98th(), target);
  }

  // optional uint32 jitter_histogram_negligible = 61;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        61, this_._internal_jitter_histogram_negligible(), target);
  }

  // optional uint32 jitter_histogram_1 = 62;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        62, this_._internal_jitter_histogram_1(), target);
  }

  // optional uint32 jitter_histogram_2 = 63;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        63, this_._internal_jitter_histogram_2(), target);
  }

  // optional uint32 jitter_histogram_5 = 64;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        64, this_._internal_jitter_histogram_5(), target);
  }

  // optional uint32 jitter_histogram_10 = 65;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        65, this_._internal_jitter_histogram_10(), target);
  }

  // optional uint32 jitter_histogram_20 = 66;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        66, this_._internal_jitter_histogram_20(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramLinkLifetimeStats)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramLinkLifetimeStats::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramLinkLifetimeStats& this_ = static_cast<const CMsgSteamDatagramLinkLifetimeStats&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramLinkLifetimeStats::ByteSizeLong() const {
  const CMsgSteamDatagramLinkLifetimeStats& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramLinkLifetimeStats)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated uint64 multipath_packets_recv_sequenced = 12;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ::size_t data_size = ::_pbi::WireFormatLite::UInt64Size(
          this_._internal_multipath_packets_recv_sequenced());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_multipath_packets_recv_sequenced_size());
      total_size += tag_size + data_size;
    }
    // repeated uint64 multipath_packets_recv_later = 13;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ::size_t data_size = ::_pbi::WireFormatLite::UInt64Size(
          this_._internal_multipath_packets_recv_later());
      ::size_t tag_size = ::size_t{1} *
          ::_pbi::FromIntSize(this_._internal_multipath_packets_recv_later_size());
      total_size += tag_size + data_size;
    }
    // optional uint64 packets_sent = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_sent());
    }
    // optional uint64 kb_sent = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_kb_sent());
    }
    // optional uint64 packets_recv = 5;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv());
    }
    // optional uint64 kb_recv = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_kb_recv());
    }
    // optional uint64 packets_recv_sequenced = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_sequenced());
    }
    // optional uint64 packets_recv_dropped = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_dropped());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    // optional uint32 connected_seconds = 2;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_connected_seconds());
    }
    // optional uint32 multipath_send_enabled = 14;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_multipath_send_enabled());
    }
    // optional uint64 packets_recv_out_of_order = 9;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_out_of_order());
    }
    // optional uint64 packets_recv_duplicate = 10;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_duplicate());
    }
    // optional uint64 packets_recv_lurch = 11;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_lurch());
    }
    // optional uint64 packets_recv_out_of_order_corrected = 15;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_packets_recv_out_of_order_corrected());
    }
    // optional uint32 quality_histogram_100 = 21;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_100());
    }
    // optional uint32 quality_histogram_99 = 22;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_99());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    // optional uint32 quality_histogram_97 = 23;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_97());
    }
    // optional uint32 quality_histogram_95 = 24;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_95());
    }
    // optional uint32 quality_histogram_90 = 25;
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_90());
    }
    // optional uint32 quality_histogram_75 = 26;
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_75());
    }
    // optional uint32 quality_histogram_50 = 27;
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_50());
    }
    // optional uint32 quality_histogram_1 = 28;
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_1());
    }
    // optional uint32 quality_histogram_dead = 29;
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_histogram_dead());
    }
    // optional uint32 quality_ntile_2nd = 30;
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_ntile_2nd());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    // optional uint32 quality_ntile_5th = 31;
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_ntile_5th());
    }
    // optional uint32 quality_ntile_25th = 32;
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_ntile_25th());
    }
    // optional uint32 quality_ntile_50th = 33;
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_quality_ntile_50th());
    }
    // optional uint32 ping_ntile_5th = 50;
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_ntile_5th());
    }
    // optional uint32 ping_ntile_50th = 51;
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_ntile_50th());
    }
    // optional uint32 ping_ntile_75th = 52;
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_ntile_75th());
    }
    // optional uint32 ping_histogram_25 = 41;
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_25());
    }
    // optional uint32 ping_histogram_50 = 42;
    if (CheckHasBit(cached_has_bits, 0x80000000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_50());
    }
  }
  cached_has_bits = this_._impl_._has_bits_[1];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // optional uint32 ping_histogram_75 = 43;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_75());
    }
    // optional uint32 ping_histogram_100 = 44;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_100());
    }
    // optional uint32 ping_histogram_125 = 45;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_125());
    }
    // optional uint32 ping_histogram_150 = 46;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_150());
    }
    // optional uint32 ping_histogram_200 = 47;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_200());
    }
    // optional uint32 ping_histogram_300 = 48;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_300());
    }
    // optional uint32 ping_histogram_max = 49;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_histogram_max());
    }
    // optional uint32 ping_ntile_95th = 53;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_ntile_95th());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    // optional uint32 ping_ntile_98th = 54;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_ping_ntile_98th());
    }
    // optional uint32 jitter_histogram_negligible = 61;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_negligible());
    }
    // optional uint32 jitter_histogram_1 = 62;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_1());
    }
    // optional uint32 jitter_histogram_2 = 63;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_2());
    }
    // optional uint32 jitter_histogram_5 = 64;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_5());
    }
    // optional uint32 jitter_histogram_10 = 65;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_10());
    }
    // optional uint32 jitter_histogram_20 = 66;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_jitter_histogram_20());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramLinkLifetimeStats::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramLinkLifetimeStats*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramLinkLifetimeStats&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramLinkLifetimeStats)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_multipath_packets_recv_sequenced()->MergeFrom(from._internal_multipath_packets_recv_sequenced());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_multipath_packets_recv_later()->MergeFrom(from._internal_multipath_packets_recv_later());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.packets_sent_ = from._impl_.packets_sent_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.kb_sent_ = from._impl_.kb_sent_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.packets_recv_ = from._impl_.packets_recv_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.kb_recv_ = from._impl_.kb_recv_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.packets_recv_sequenced_ = from._impl_.packets_recv_sequenced_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.packets_recv_dropped_ = from._impl_.packets_recv_dropped_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_impl_.connected_seconds_ = from._impl_.connected_seconds_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.multipath_send_enabled_ = from._impl_.multipath_send_enabled_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.packets_recv_out_of_order_ = from._impl_.packets_recv_out_of_order_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.packets_recv_duplicate_ = from._impl_.packets_recv_duplicate_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.packets_recv_lurch_ = from._impl_.packets_recv_lurch_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.packets_recv_out_of_order_corrected_ = from._impl_.packets_recv_out_of_order_corrected_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.quality_histogram_100_ = from._impl_.quality_histogram_100_;
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _this->_impl_.quality_histogram_99_ = from._impl_.quality_histogram_99_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      _this->_impl_.quality_histogram_97_ = from._impl_.quality_histogram_97_;
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      _this->_impl_.quality_histogram_95_ = from._impl_.quality_histogram_95_;
    }
    if (CheckHasBit(cached_has_bits, 0x00040000U)) {
      _this->_impl_.quality_histogram_90_ = from._impl_.quality_histogram_90_;
    }
    if (CheckHasBit(cached_has_bits, 0x00080000U)) {
      _this->_impl_.quality_histogram_75_ = from._impl_.quality_histogram_75_;
    }
    if (CheckHasBit(cached_has_bits, 0x00100000U)) {
      _this->_impl_.quality_histogram_50_ = from._impl_.quality_histogram_50_;
    }
    if (CheckHasBit(cached_has_bits, 0x00200000U)) {
      _this->_impl_.quality_histogram_1_ = from._impl_.quality_histogram_1_;
    }
    if (CheckHasBit(cached_has_bits, 0x00400000U)) {
      _this->_impl_.quality_histogram_dead_ = from._impl_.quality_histogram_dead_;
    }
    if (CheckHasBit(cached_has_bits, 0x00800000U)) {
      _this->_impl_.quality_ntile_2nd_ = from._impl_.quality_ntile_2nd_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0xff000000U)) {
    if (CheckHasBit(cached_has_bits, 0x01000000U)) {
      _this->_impl_.quality_ntile_5th_ = from._impl_.quality_ntile_5th_;
    }
    if (CheckHasBit(cached_has_bits, 0x02000000U)) {
      _this->_impl_.quality_ntile_25th_ = from._impl_.quality_ntile_25th_;
    }
    if (CheckHasBit(cached_has_bits, 0x04000000U)) {
      _this->_impl_.quality_ntile_50th_ = from._impl_.quality_ntile_50th_;
    }
    if (CheckHasBit(cached_has_bits, 0x08000000U)) {
      _this->_impl_.ping_ntile_5th_ = from._impl_.ping_ntile_5th_;
    }
    if (CheckHasBit(cached_has_bits, 0x10000000U)) {
      _this->_impl_.ping_ntile_50th_ = from._impl_.ping_ntile_50th_;
    }
    if (CheckHasBit(cached_has_bits, 0x20000000U)) {
      _this->_impl_.ping_ntile_75th_ = from._impl_.ping_ntile_75th_;
    }
    if (CheckHasBit(cached_has_bits, 0x40000000U)) {
      _this->_impl_.ping_histogram_25_ = from._impl_.ping_histogram_25_;
    }
    if (CheckHasBit(cached_has_bits, 0x80000000U)) {
      _this->_impl_.ping_histogram_50_ = from._impl_.ping_histogram_50_;
    }
  }
  cached_has_bits = from._impl_._has_bits_[1];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.ping_histogram_75_ = from._impl_.ping_histogram_75_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.ping_histogram_100_ = from._impl_.ping_histogram_100_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.ping_histogram_125_ = from._impl_.ping_histogram_125_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.ping_histogram_150_ = from._impl_.ping_histogram_150_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.ping_histogram_200_ = from._impl_.ping_histogram_200_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.ping_histogram_300_ = from._impl_.ping_histogram_300_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.ping_histogram_max_ = from._impl_.ping_histogram_max_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.ping_ntile_95th_ = from._impl_.ping_ntile_95th_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_impl_.ping_ntile_98th_ = from._impl_.ping_ntile_98th_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.jitter_histogram_negligible_ = from._impl_.jitter_histogram_negligible_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.jitter_histogram_1_ = from._impl_.jitter_histogram_1_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.jitter_histogram_2_ = from._impl_.jitter_histogram_2_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.jitter_histogram_5_ = from._impl_.jitter_histogram_5_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.jitter_histogram_10_ = from._impl_.jitter_histogram_10_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.jitter_histogram_20_ = from._impl_.jitter_histogram_20_;
    }
  }
  _this->_impl_._has_bits_.Or(from._impl_._has_bits_);
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramLinkLifetimeStats::InternalSwap(CMsgSteamDatagramLinkLifetimeStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_._has_bits_[1], other->_impl_._has_bits_[1]);
  _impl_.multipath_packets_recv_sequenced_.InternalSwap(&other->_impl_.multipath_packets_recv_sequenced_);
  _impl_.multipath_packets_recv_later_.InternalSwap(&other->_impl_.multipath_packets_recv_later_);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.jitter_histogram_20_)
      + sizeof(CMsgSteamDatagramLinkLifetimeStats::_impl_.jitter_histogram_20_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramLinkLifetimeStats, _impl_.packets_sent_)>(
          reinterpret_cast<char*>(&_impl_.packets_sent_),
          reinterpret_cast<char*>(&other->_impl_.packets_sent_));
}

::google::protobuf::Metadata CMsgSteamDatagramLinkLifetimeStats::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamDatagramConnectionQuality::CMsgSteamDatagramConnectionQuality(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramConnectionQuality_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamDatagramConnectionQuality)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramConnectionQuality::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamDatagramConnectionQuality& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0} {}

CMsgSteamDatagramConnectionQuality::CMsgSteamDatagramConnectionQuality(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamDatagramConnectionQuality& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamDatagramConnectionQuality_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamDatagramConnectionQuality* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.instantaneous_ = (CheckHasBit(cached_has_bits, 0x00000001U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.instantaneous_)
                : nullptr;
  _impl_.lifetime_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.lifetime_)
                : nullptr;

  // @@protoc_insertion_point(copy_constructor:CMsgSteamDatagramConnectionQuality)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamDatagramConnectionQuality::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgSteamDatagramConnectionQuality::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, instantaneous_),
           0,
           offsetof(Impl_, lifetime_) -
               offsetof(Impl_, instantaneous_) +
               sizeof(Impl_::lifetime_));
}
CMsgSteamDatagramConnectionQuality::~CMsgSteamDatagramConnectionQuality() {
  // @@protoc_insertion_point(destructor:CMsgSteamDatagramConnectionQuality)
  SharedDtor(*this);
}
inline void CMsgSteamDatagramConnectionQuality::SharedDtor(MessageLite& self) {
  CMsgSteamDatagramConnectionQuality& this_ = static_cast<CMsgSteamDatagramConnectionQuality&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.instantaneous_;
  delete this_._impl_.lifetime_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamDatagramConnectionQuality_class_data_ =
        CMsgSteamDatagramConnectionQuality::InternalGenerateClassData_(CMsgSteamDatagramConnectionQuality_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramConnectionQuality::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramConnectionQuality_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamDatagramConnectionQuality_class_data_.tc_table);
  return CMsgSteamDatagramConnectionQuality_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamDatagramConnectionQuality::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamDatagramConnectionQuality_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamDatagramConnectionQuality_globals_));
  return CMsgSteamDatagramConnectionQuality_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamDatagramConnectionQuality::ParseTableT_
    CMsgSteamDatagramConnectionQuality::_table_ =
        CMsgSteamDatagramConnectionQuality::InternalGenerateParseTable_(CMsgSteamDatagramConnectionQuality_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamDatagramConnectionQuality::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamDatagramConnectionQuality)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(_impl_.instantaneous_ != nullptr);
      _impl_.instantaneous_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.lifetime_ != nullptr);
      _impl_.lifetime_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramConnectionQuality::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamDatagramConnectionQuality& this_ = static_cast<const CMsgSteamDatagramConnectionQuality&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamDatagramConnectionQuality::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamDatagramConnectionQuality& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamDatagramConnectionQuality)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.instantaneous_, this_._impl_.instantaneous_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        2, *this_._impl_.lifetime_, this_._impl_.lifetime_->GetCachedSize(), target,
        stream);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamDatagramConnectionQuality)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamDatagramConnectionQuality::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamDatagramConnectionQuality& this_ = static_cast<const CMsgSteamDatagramConnectionQuality&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamDatagramConnectionQuality::ByteSizeLong() const {
  const CMsgSteamDatagramConnectionQuality& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamDatagramConnectionQuality)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional .CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.instantaneous_);
    }
    // optional .CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.lifetime_);
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamDatagramConnectionQuality::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamDatagramConnectionQuality*>(&to_msg);
  auto& from = static_cast<const CMsgSteamDatagramConnectionQuality&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamDatagramConnectionQuality)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(from._impl_.instantaneous_ != nullptr);
      if (_this->_impl_.instantaneous_ == nullptr) {
        _this->_impl_.instantaneous_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.instantaneous_);
      } else {
        _this->_impl_.instantaneous_->MergeFrom(*from._impl_.instantaneous_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.lifetime_ != nullptr);
      if (_this->_impl_.lifetime_ == nullptr) {
        _this->_impl_.lifetime_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.lifetime_);
      } else {
        _this->_impl_.lifetime_->MergeFrom(*from._impl_.lifetime_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamDatagramConnectionQuality::InternalSwap(CMsgSteamDatagramConnectionQuality* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.lifetime_)
      + sizeof(CMsgSteamDatagramConnectionQuality::_impl_.lifetime_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamDatagramConnectionQuality, _impl_.instantaneous_)>(
          reinterpret_cast<char*>(&_impl_.instantaneous_),
          reinterpret_cast<char*>(&other->_impl_.instantaneous_));
}

::google::protobuf::Metadata CMsgSteamDatagramConnectionQuality::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgICECandidate::CMsgICECandidate(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICECandidate_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgICECandidate)
}
PROTOBUF_NDEBUG_INLINE CMsgICECandidate::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgICECandidate& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        candidate_(arena, from.candidate_) {}

CMsgICECandidate::CMsgICECandidate(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgICECandidate& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICECandidate_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgICECandidate* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);

  // @@protoc_insertion_point(copy_constructor:CMsgICECandidate)
}
PROTOBUF_NDEBUG_INLINE CMsgICECandidate::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        candidate_(arena) {}

inline void CMsgICECandidate::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
CMsgICECandidate::~CMsgICECandidate() {
  // @@protoc_insertion_point(destructor:CMsgICECandidate)
  SharedDtor(*this);
}
inline void CMsgICECandidate::SharedDtor(MessageLite& self) {
  CMsgICECandidate& this_ = static_cast<CMsgICECandidate&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.candidate_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgICECandidate_class_data_ =
        CMsgICECandidate::InternalGenerateClassData_(CMsgICECandidate_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICECandidate::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICECandidate_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgICECandidate_class_data_.tc_table);
  return CMsgICECandidate_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICECandidate::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICECandidate_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgICECandidate_globals_));
  return CMsgICECandidate_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgICECandidate::ParseTableT_
    CMsgICECandidate::_table_ =
        CMsgICECandidate::InternalGenerateParseTable_(CMsgICECandidate_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgICECandidate::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgICECandidate)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.candidate_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgICECandidate::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgICECandidate& this_ = static_cast<const CMsgICECandidate&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgICECandidate::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgICECandidate& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgICECandidate)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string candidate = 3;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_candidate();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgICECandidate)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgICECandidate::ByteSizeLong(const MessageLite& base) {
  const CMsgICECandidate& this_ = static_cast<const CMsgICECandidate&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgICECandidate::ByteSizeLong() const {
  const CMsgICECandidate& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgICECandidate)
  ::size_t total_size = 0;

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

   {
    // optional string candidate = 3;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_candidate());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgICECandidate::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgICECandidate*>(&to_msg);
  auto& from = static_cast<const CMsgICECandidate&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgICECandidate)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_internal_set_candidate(from._internal_candidate());
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgICECandidate::InternalSwap(CMsgICECandidate* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.candidate_, &other->_impl_.candidate_, arena);
}

::google::protobuf::Metadata CMsgICECandidate::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgICERendezvous_Auth::CMsgICERendezvous_Auth(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICERendezvous_Auth_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgICERendezvous.Auth)
}
PROTOBUF_NDEBUG_INLINE CMsgICERendezvous_Auth::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgICERendezvous_Auth& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        pwd_frag_(arena, from.pwd_frag_) {}

CMsgICERendezvous_Auth::CMsgICERendezvous_Auth(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgICERendezvous_Auth& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICERendezvous_Auth_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgICERendezvous_Auth* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);

  // @@protoc_insertion_point(copy_constructor:CMsgICERendezvous.Auth)
}
PROTOBUF_NDEBUG_INLINE CMsgICERendezvous_Auth::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        pwd_frag_(arena) {}

inline void CMsgICERendezvous_Auth::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
CMsgICERendezvous_Auth::~CMsgICERendezvous_Auth() {
  // @@protoc_insertion_point(destructor:CMsgICERendezvous.Auth)
  SharedDtor(*this);
}
inline void CMsgICERendezvous_Auth::SharedDtor(MessageLite& self) {
  CMsgICERendezvous_Auth& this_ = static_cast<CMsgICERendezvous_Auth&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.pwd_frag_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgICERendezvous_Auth_class_data_ =
        CMsgICERendezvous_Auth::InternalGenerateClassData_(CMsgICERendezvous_Auth_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICERendezvous_Auth::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICERendezvous_Auth_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgICERendezvous_Auth_class_data_.tc_table);
  return CMsgICERendezvous_Auth_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICERendezvous_Auth::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICERendezvous_Auth_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgICERendezvous_Auth_globals_));
  return CMsgICERendezvous_Auth_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgICERendezvous_Auth::ParseTableT_
    CMsgICERendezvous_Auth::_table_ =
        CMsgICERendezvous_Auth::InternalGenerateParseTable_(CMsgICERendezvous_Auth_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgICERendezvous_Auth::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgICERendezvous.Auth)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.pwd_frag_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgICERendezvous_Auth::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgICERendezvous_Auth& this_ = static_cast<const CMsgICERendezvous_Auth&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgICERendezvous_Auth::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgICERendezvous_Auth& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgICERendezvous.Auth)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string pwd_frag = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_pwd_frag();
    target = stream->WriteStringMaybeAliased(1, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgICERendezvous.Auth)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgICERendezvous_Auth::ByteSizeLong(const MessageLite& base) {
  const CMsgICERendezvous_Auth& this_ = static_cast<const CMsgICERendezvous_Auth&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgICERendezvous_Auth::ByteSizeLong() const {
  const CMsgICERendezvous_Auth& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgICERendezvous.Auth)
  ::size_t total_size = 0;

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

   {
    // optional string pwd_frag = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_pwd_frag());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgICERendezvous_Auth::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgICERendezvous_Auth*>(&to_msg);
  auto& from = static_cast<const CMsgICERendezvous_Auth&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgICERendezvous.Auth)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_internal_set_pwd_frag(from._internal_pwd_frag());
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgICERendezvous_Auth::InternalSwap(CMsgICERendezvous_Auth* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.pwd_frag_, &other->_impl_.pwd_frag_, arena);
}

::google::protobuf::Metadata CMsgICERendezvous_Auth::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgICERendezvous::CMsgICERendezvous(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICERendezvous_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgICERendezvous)
}
PROTOBUF_NDEBUG_INLINE CMsgICERendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgICERendezvous& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0} {}

CMsgICERendezvous::CMsgICERendezvous(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgICERendezvous& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgICERendezvous_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgICERendezvous* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.add_candidate_ = (CheckHasBit(cached_has_bits, 0x00000001U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.add_candidate_)
                : nullptr;
  _impl_.auth_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.auth_)
                : nullptr;

  // @@protoc_insertion_point(copy_constructor:CMsgICERendezvous)
}
PROTOBUF_NDEBUG_INLINE CMsgICERendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgICERendezvous::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, add_candidate_),
           0,
           offsetof(Impl_, auth_) -
               offsetof(Impl_, add_candidate_) +
               sizeof(Impl_::auth_));
}
CMsgICERendezvous::~CMsgICERendezvous() {
  // @@protoc_insertion_point(destructor:CMsgICERendezvous)
  SharedDtor(*this);
}
inline void CMsgICERendezvous::SharedDtor(MessageLite& self) {
  CMsgICERendezvous& this_ = static_cast<CMsgICERendezvous&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.add_candidate_;
  delete this_._impl_.auth_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgICERendezvous_class_data_ =
        CMsgICERendezvous::InternalGenerateClassData_(CMsgICERendezvous_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICERendezvous::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICERendezvous_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgICERendezvous_class_data_.tc_table);
  return CMsgICERendezvous_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgICERendezvous::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgICERendezvous_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgICERendezvous_globals_));
  return CMsgICERendezvous_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgICERendezvous::ParseTableT_
    CMsgICERendezvous::_table_ =
        CMsgICERendezvous::InternalGenerateParseTable_(CMsgICERendezvous_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgICERendezvous::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgICERendezvous)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(_impl_.add_candidate_ != nullptr);
      _impl_.add_candidate_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.auth_ != nullptr);
      _impl_.auth_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgICERendezvous::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgICERendezvous& this_ = static_cast<const CMsgICERendezvous&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgICERendezvous::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgICERendezvous& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgICERendezvous)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgICECandidate add_candidate = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.add_candidate_, this_._impl_.add_candidate_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgICERendezvous.Auth auth = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        2, *this_._impl_.auth_, this_._impl_.auth_->GetCachedSize(), target,
        stream);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgICERendezvous)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgICERendezvous::ByteSizeLong(const MessageLite& base) {
  const CMsgICERendezvous& this_ = static_cast<const CMsgICERendezvous&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgICERendezvous::ByteSizeLong() const {
  const CMsgICERendezvous& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgICERendezvous)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional .CMsgICECandidate add_candidate = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.add_candidate_);
    }
    // optional .CMsgICERendezvous.Auth auth = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.auth_);
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgICERendezvous::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgICERendezvous*>(&to_msg);
  auto& from = static_cast<const CMsgICERendezvous&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgICERendezvous)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(from._impl_.add_candidate_ != nullptr);
      if (_this->_impl_.add_candidate_ == nullptr) {
        _this->_impl_.add_candidate_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.add_candidate_);
      } else {
        _this->_impl_.add_candidate_->MergeFrom(*from._impl_.add_candidate_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.auth_ != nullptr);
      if (_this->_impl_.auth_ == nullptr) {
        _this->_impl_.auth_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.auth_);
      } else {
        _this->_impl_.auth_->MergeFrom(*from._impl_.auth_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgICERendezvous::InternalSwap(CMsgICERendezvous* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.auth_)
      + sizeof(CMsgICERendezvous::_impl_.auth_)
      - PROTOBUF_FIELD_OFFSET(CMsgICERendezvous, _impl_.add_candidate_)>(
          reinterpret_cast<char*>(&_impl_.add_candidate_),
          reinterpret_cast<char*>(&other->_impl_.add_candidate_));
}

::google::protobuf::Metadata CMsgICERendezvous::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::clear_cert() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.cert_ != nullptr) _impl_.cert_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
}
CMsgSteamNetworkingP2PRendezvous_ConnectRequest::CMsgSteamNetworkingP2PRendezvous_ConnectRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectRequest_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous_ConnectRequest& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        from_fakeip_(arena, from.from_fakeip_) {}

CMsgSteamNetworkingP2PRendezvous_ConnectRequest::CMsgSteamNetworkingP2PRendezvous_ConnectRequest(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous_ConnectRequest& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectRequest_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous_ConnectRequest* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.crypt_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.crypt_)
                : nullptr;
  _impl_.cert_ = (CheckHasBit(cached_has_bits, 0x00000004U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cert_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, to_virtual_port_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, to_virtual_port_),
           offsetof(Impl_, from_virtual_port_) -
               offsetof(Impl_, to_virtual_port_) +
               sizeof(Impl_::from_virtual_port_));

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        from_fakeip_(arena) {}

inline void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, crypt_),
           0,
           offsetof(Impl_, from_virtual_port_) -
               offsetof(Impl_, crypt_) +
               sizeof(Impl_::from_virtual_port_));
}
CMsgSteamNetworkingP2PRendezvous_ConnectRequest::~CMsgSteamNetworkingP2PRendezvous_ConnectRequest() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous_ConnectRequest& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectRequest&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.from_fakeip_.Destroy();
  delete this_._impl_.crypt_;
  delete this_._impl_.cert_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectRequest::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectRequest::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_));
  return CMsgSteamNetworkingP2PRendezvous_ConnectRequest_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous_ConnectRequest::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_table_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_ConnectRequest_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.from_fakeip_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.crypt_ != nullptr);
      _impl_.crypt_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(_impl_.cert_ != nullptr);
      _impl_.cert_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000018U)) {
    ::memset(&_impl_.to_virtual_port_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.from_virtual_port_) -
        reinterpret_cast<char*>(&_impl_.to_virtual_port_)) + sizeof(_impl_.from_virtual_port_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectRequest& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectRequest&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectRequest& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.crypt_, this_._impl_.crypt_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgSteamDatagramCertificateSigned cert = 7;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        7, *this_._impl_.cert_, this_._impl_.cert_->GetCachedSize(), target,
        stream);
  }

  // optional uint32 to_virtual_port = 9;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        9, this_._internal_to_virtual_port(), target);
  }

  // optional uint32 from_virtual_port = 10;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        10, this_._internal_from_virtual_port(), target);
  }

  // optional string from_fakeip = 11;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_from_fakeip();
    target = stream->WriteStringMaybeAliased(11, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectRequest::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectRequest& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectRequest&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectRequest::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectRequest& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    // optional string from_fakeip = 11;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_from_fakeip());
    }
    // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.crypt_);
    }
    // optional .CMsgSteamDatagramCertificateSigned cert = 7;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.cert_);
    }
    // optional uint32 to_virtual_port = 9;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_to_virtual_port());
    }
    // optional uint32 from_virtual_port = 10;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_from_virtual_port());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectRequest*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectRequest&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous.ConnectRequest)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_from_fakeip(from._internal_from_fakeip());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.crypt_ != nullptr);
      if (_this->_impl_.crypt_ == nullptr) {
        _this->_impl_.crypt_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.crypt_);
      } else {
        _this->_impl_.crypt_->MergeFrom(*from._impl_.crypt_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(from._impl_.cert_ != nullptr);
      if (_this->_impl_.cert_ == nullptr) {
        _this->_impl_.cert_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cert_);
      } else {
        _this->_impl_.cert_->MergeFrom(*from._impl_.cert_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.to_virtual_port_ = from._impl_.to_virtual_port_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.from_virtual_port_ = from._impl_.from_virtual_port_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingP2PRendezvous_ConnectRequest::InternalSwap(CMsgSteamNetworkingP2PRendezvous_ConnectRequest* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.from_fakeip_, &other->_impl_.from_fakeip_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.from_virtual_port_)
      + sizeof(CMsgSteamNetworkingP2PRendezvous_ConnectRequest::_impl_.from_virtual_port_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectRequest, _impl_.crypt_)>(
          reinterpret_cast<char*>(&_impl_.crypt_),
          reinterpret_cast<char*>(&other->_impl_.crypt_));
}

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous_ConnectRequest::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

void CMsgSteamNetworkingP2PRendezvous_ConnectOK::clear_cert() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.cert_ != nullptr) _impl_.cert_->Clear();
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
}
CMsgSteamNetworkingP2PRendezvous_ConnectOK::CMsgSteamNetworkingP2PRendezvous_ConnectOK(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectOK_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectOK::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous_ConnectOK& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0} {}

CMsgSteamNetworkingP2PRendezvous_ConnectOK::CMsgSteamNetworkingP2PRendezvous_ConnectOK(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous_ConnectOK& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectOK_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous_ConnectOK* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.crypt_ = (CheckHasBit(cached_has_bits, 0x00000001U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.crypt_)
                : nullptr;
  _impl_.cert_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cert_)
                : nullptr;

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectOK::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgSteamNetworkingP2PRendezvous_ConnectOK::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, crypt_),
           0,
           offsetof(Impl_, cert_) -
               offsetof(Impl_, crypt_) +
               sizeof(Impl_::cert_));
}
CMsgSteamNetworkingP2PRendezvous_ConnectOK::~CMsgSteamNetworkingP2PRendezvous_ConnectOK() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous_ConnectOK::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous_ConnectOK& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectOK&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.crypt_;
  delete this_._impl_.cert_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectOK::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectOK::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_));
  return CMsgSteamNetworkingP2PRendezvous_ConnectOK_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous_ConnectOK::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous_ConnectOK::_table_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_ConnectOK_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous_ConnectOK::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(_impl_.crypt_ != nullptr);
      _impl_.crypt_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.cert_ != nullptr);
      _impl_.cert_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectOK::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectOK& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectOK&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectOK::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectOK& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        5, *this_._impl_.crypt_, this_._impl_.crypt_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgSteamDatagramCertificateSigned cert = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.cert_, this_._impl_.cert_->GetCachedSize(), target,
        stream);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectOK::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectOK& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectOK&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectOK::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectOK& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.crypt_);
    }
    // optional .CMsgSteamDatagramCertificateSigned cert = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.cert_);
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous_ConnectOK::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectOK*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectOK&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous.ConnectOK)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(from._impl_.crypt_ != nullptr);
      if (_this->_impl_.crypt_ == nullptr) {
        _this->_impl_.crypt_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.crypt_);
      } else {
        _this->_impl_.crypt_->MergeFrom(*from._impl_.crypt_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.cert_ != nullptr);
      if (_this->_impl_.cert_ == nullptr) {
        _this->_impl_.cert_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.cert_);
      } else {
        _this->_impl_.cert_->MergeFrom(*from._impl_.cert_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingP2PRendezvous_ConnectOK::InternalSwap(CMsgSteamNetworkingP2PRendezvous_ConnectOK* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.cert_)
      + sizeof(CMsgSteamNetworkingP2PRendezvous_ConnectOK::_impl_.cert_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ConnectOK, _impl_.crypt_)>(
          reinterpret_cast<char*>(&_impl_.crypt_),
          reinterpret_cast<char*>(&other->_impl_.crypt_));
}

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous_ConnectOK::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        debug_(arena, from.debug_) {}

CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::CMsgSteamNetworkingP2PRendezvous_ConnectionClosed(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous_ConnectionClosed* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  _impl_.reason_code_ = from._impl_.reason_code_;

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        debug_(arena) {}

inline void CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.reason_code_ = {};
}
CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::~CMsgSteamNetworkingP2PRendezvous_ConnectionClosed() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.debug_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_));
  return CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::_table_ =
        CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.debug_.ClearNonDefaultToEmpty();
  }
  _impl_.reason_code_ = 0u;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string debug = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_debug();
    target = stream->WriteStringMaybeAliased(5, _s, target);
  }

  // optional uint32 reason_code = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        6, this_._internal_reason_code(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // optional string debug = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_debug());
    }
    // optional uint32 reason_code = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_reason_code());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous_ConnectionClosed*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous_ConnectionClosed&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous.ConnectionClosed)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_debug(from._internal_debug());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.reason_code_ = from._impl_.reason_code_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::InternalSwap(CMsgSteamNetworkingP2PRendezvous_ConnectionClosed* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.debug_, &other->_impl_.debug_, arena);
  swap(_impl_.reason_code_, other->_impl_.reason_code_);
}

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous_ConnectionClosed::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamNetworkingP2PRendezvous_ReliableMessage::CMsgSteamNetworkingP2PRendezvous_ReliableMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ReliableMessage_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ReliableMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous_ReliableMessage& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0} {}

CMsgSteamNetworkingP2PRendezvous_ReliableMessage::CMsgSteamNetworkingP2PRendezvous_ReliableMessage(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous_ReliableMessage& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ReliableMessage_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous_ReliableMessage* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.ice_ = (CheckHasBit(cached_has_bits, 0x00000001U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.ice_)
                : nullptr;

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ReliableMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgSteamNetworkingP2PRendezvous_ReliableMessage::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.ice_ = {};
}
CMsgSteamNetworkingP2PRendezvous_ReliableMessage::~CMsgSteamNetworkingP2PRendezvous_ReliableMessage() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous_ReliableMessage::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous_ReliableMessage& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous_ReliableMessage&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.ice_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_ =
        CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ReliableMessage::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ReliableMessage::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_));
  return CMsgSteamNetworkingP2PRendezvous_ReliableMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous_ReliableMessage::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous_ReliableMessage::_table_ =
        CMsgSteamNetworkingP2PRendezvous_ReliableMessage::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_ReliableMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous_ReliableMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    ABSL_DCHECK(_impl_.ice_ != nullptr);
    _impl_.ice_->Clear();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ReliableMessage::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous_ReliableMessage& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ReliableMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ReliableMessage::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous_ReliableMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .CMsgICERendezvous ice = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        1, *this_._impl_.ice_, this_._impl_.ice_->GetCachedSize(), target,
        stream);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous_ReliableMessage::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous_ReliableMessage& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ReliableMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous_ReliableMessage::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous_ReliableMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  ::size_t total_size = 0;

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

   {
    // optional .CMsgICERendezvous ice = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.ice_);
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous_ReliableMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous_ReliableMessage*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous_ReliableMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous.ReliableMessage)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    ABSL_DCHECK(from._impl_.ice_ != nullptr);
    if (_this->_impl_.ice_ == nullptr) {
      _this->_impl_.ice_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.ice_);
    } else {
      _this->_impl_.ice_->MergeFrom(*from._impl_.ice_);
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


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

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous_ReliableMessage::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        data_(arena, from.data_) {}

CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::CMsgSteamNetworkingP2PRendezvous_ApplicationMessage(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous_ApplicationMessage* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, msg_num_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, msg_num_),
           offsetof(Impl_, lane_idx_) -
               offsetof(Impl_, msg_num_) +
               sizeof(Impl_::lane_idx_));

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        data_(arena) {}

inline void CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, msg_num_),
           0,
           offsetof(Impl_, lane_idx_) -
               offsetof(Impl_, msg_num_) +
               sizeof(Impl_::lane_idx_));
}
CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::~CMsgSteamNetworkingP2PRendezvous_ApplicationMessage() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.data_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_ =
        CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_));
  return CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_table_ =
        CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.data_.ClearNonDefaultToEmpty();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000000eU)) {
    ::memset(&_impl_.msg_num_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.lane_idx_) -
        reinterpret_cast<char*>(&_impl_.msg_num_)) + sizeof(_impl_.lane_idx_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional bytes data = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_data();
    target = stream->WriteBytesMaybeAliased(1, _s, target);
  }

  // optional uint64 msg_num = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        2, this_._internal_msg_num(), target);
  }

  // optional uint32 flags = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        3, this_._internal_flags(), target);
  }

  // optional uint32 lane_idx = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        4, this_._internal_lane_idx(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // optional bytes data = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_data());
    }
    // optional uint64 msg_num = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_msg_num());
    }
    // optional uint32 flags = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_flags());
    }
    // optional uint32 lane_idx = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_lane_idx());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous_ApplicationMessage*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous_ApplicationMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous.ApplicationMessage)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_data(from._internal_data());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.msg_num_ = from._impl_.msg_num_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.flags_ = from._impl_.flags_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.lane_idx_ = from._impl_.lane_idx_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::InternalSwap(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.data_, &other->_impl_.data_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.lane_idx_)
      + sizeof(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::_impl_.lane_idx_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous_ApplicationMessage, _impl_.msg_num_)>(
          reinterpret_cast<char*>(&_impl_.msg_num_),
          reinterpret_cast<char*>(&other->_impl_.msg_num_));
}

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous_ApplicationMessage::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamNetworkingP2PRendezvous::CMsgSteamNetworkingP2PRendezvous(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingP2PRendezvous)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::CMsgSteamNetworkingP2PRendezvous& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        reliable_messages_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::CMsgSteamNetworkingP2PRendezvous,
              PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_)>()
          , from.reliable_messages_
        }
        ,
        application_messages_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::CMsgSteamNetworkingP2PRendezvous,
              PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_)>()
          , from.application_messages_
        }
        ,
        sdr_routes_(arena, from.sdr_routes_),
        from_identity_(arena, from.from_identity_),
        to_identity_(arena, from.to_identity_),
        hosted_server_ticket_(arena, from.hosted_server_ticket_) {}

CMsgSteamNetworkingP2PRendezvous::CMsgSteamNetworkingP2PRendezvous(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const CMsgSteamNetworkingP2PRendezvous& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingP2PRendezvous_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  CMsgSteamNetworkingP2PRendezvous* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.connect_request_ = (CheckHasBit(cached_has_bits, 0x00000040U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connect_request_)
                : nullptr;
  _impl_.connect_ok_ = (CheckHasBit(cached_has_bits, 0x00000080U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connect_ok_)
                : nullptr;
  _impl_.connection_closed_ = (CheckHasBit(cached_has_bits, 0x00000100U))
                ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connection_closed_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, to_connection_id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, to_connection_id_),
           offsetof(Impl_, first_reliable_msg_) -
               offsetof(Impl_, to_connection_id_) +
               sizeof(Impl_::first_reliable_msg_));

  // @@protoc_insertion_point(copy_constructor:CMsgSteamNetworkingP2PRendezvous)
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingP2PRendezvous::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        reliable_messages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamNetworkingP2PRendezvous,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.reliable_messages_)>()
         }
        ,
        application_messages_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::CMsgSteamNetworkingP2PRendezvous,
            PROTOBUF_FIELD_OFFSET(::CMsgSteamNetworkingP2PRendezvous, _impl_.application_messages_)>()
         }
        ,
        sdr_routes_(arena),
        from_identity_(arena),
        to_identity_(arena),
        hosted_server_ticket_(arena) {}

inline void CMsgSteamNetworkingP2PRendezvous::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, connect_request_),
           0,
           offsetof(Impl_, first_reliable_msg_) -
               offsetof(Impl_, connect_request_) +
               sizeof(Impl_::first_reliable_msg_));
}
CMsgSteamNetworkingP2PRendezvous::~CMsgSteamNetworkingP2PRendezvous() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingP2PRendezvous)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingP2PRendezvous::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingP2PRendezvous& this_ = static_cast<CMsgSteamNetworkingP2PRendezvous&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.sdr_routes_.Destroy();
  this_._impl_.from_identity_.Destroy();
  this_._impl_.to_identity_.Destroy();
  this_._impl_.hosted_server_ticket_.Destroy();
  delete this_._impl_.connect_request_;
  delete this_._impl_.connect_ok_;
  delete this_._impl_.connection_closed_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingP2PRendezvous_class_data_ =
        CMsgSteamNetworkingP2PRendezvous::InternalGenerateClassData_(CMsgSteamNetworkingP2PRendezvous_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingP2PRendezvous_class_data_.tc_table);
  return CMsgSteamNetworkingP2PRendezvous_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingP2PRendezvous::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingP2PRendezvous_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingP2PRendezvous_globals_));
  return CMsgSteamNetworkingP2PRendezvous_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingP2PRendezvous::ParseTableT_
    CMsgSteamNetworkingP2PRendezvous::_table_ =
        CMsgSteamNetworkingP2PRendezvous::InternalGenerateParseTable_(CMsgSteamNetworkingP2PRendezvous_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingP2PRendezvous::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingP2PRendezvous)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.reliable_messages_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.application_messages_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.sdr_routes_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.from_identity_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.to_identity_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.hosted_server_ticket_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      ABSL_DCHECK(_impl_.connect_request_ != nullptr);
      _impl_.connect_request_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      ABSL_DCHECK(_impl_.connect_ok_ != nullptr);
      _impl_.connect_ok_->Clear();
    }
  }
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    ABSL_DCHECK(_impl_.connection_closed_ != nullptr);
    _impl_.connection_closed_->Clear();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007e00U)) {
    ::memset(&_impl_.to_connection_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.first_reliable_msg_) -
        reinterpret_cast<char*>(&_impl_.to_connection_id_)) + sizeof(_impl_.first_reliable_msg_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingP2PRendezvous& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingP2PRendezvous::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingP2PRendezvous& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingP2PRendezvous)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional fixed32 to_connection_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(
        1, this_._internal_to_connection_id(), target);
  }

  // optional bytes sdr_routes = 2;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    const ::std::string& _s = this_._internal_sdr_routes();
    target = stream->WriteBytesMaybeAliased(2, _s, target);
  }

  // optional uint32 ack_peer_routes_revision = 3;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        3, this_._internal_ack_peer_routes_revision(), target);
  }

  // optional .CMsgSteamNetworkingP2PRendezvous.ConnectRequest connect_request = 4;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        4, *this_._impl_.connect_request_, this_._impl_.connect_request_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgSteamNetworkingP2PRendezvous.ConnectOK connect_ok = 5;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        5, *this_._impl_.connect_ok_, this_._impl_.connect_ok_->GetCachedSize(), target,
        stream);
  }

  // optional .CMsgSteamNetworkingP2PRendezvous.ConnectionClosed connection_closed = 6;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.connection_closed_, this_._impl_.connection_closed_->GetCachedSize(), target,
        stream);
  }

  // optional bool ice_enabled = 7;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        7, this_._internal_ice_enabled(), target);
  }

  // optional string from_identity = 8;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    const ::std::string& _s = this_._internal_from_identity();
    target = stream->WriteStringMaybeAliased(8, _s, target);
  }

  // optional fixed32 from_connection_id = 9;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(
        9, this_._internal_from_connection_id(), target);
  }

  // optional string to_identity = 10;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    const ::std::string& _s = this_._internal_to_identity();
    target = stream->WriteStringMaybeAliased(10, _s, target);
  }

  // optional uint32 ack_reliable_msg = 11;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        11, this_._internal_ack_reliable_msg(), target);
  }

  // optional uint32 first_reliable_msg = 12;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        12, this_._internal_first_reliable_msg(), target);
  }

  // repeated .CMsgSteamNetworkingP2PRendezvous.ReliableMessage reliable_messages = 13;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_reliable_messages_size());
         i < n; i++) {
      const auto& repfield = this_._internal_reliable_messages().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              13, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // optional bytes hosted_server_ticket = 14;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    const ::std::string& _s = this_._internal_hosted_server_ticket();
    target = stream->WriteBytesMaybeAliased(14, _s, target);
  }

  // repeated .CMsgSteamNetworkingP2PRendezvous.ApplicationMessage application_messages = 15;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_application_messages_size());
         i < n; i++) {
      const auto& repfield = this_._internal_application_messages().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              15, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingP2PRendezvous)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingP2PRendezvous::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingP2PRendezvous& this_ = static_cast<const CMsgSteamNetworkingP2PRendezvous&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingP2PRendezvous::ByteSizeLong() const {
  const CMsgSteamNetworkingP2PRendezvous& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingP2PRendezvous)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += ::absl::popcount(0x00001200U & cached_has_bits) * 5;
  total_size += static_cast<bool>(0x00000800U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // repeated .CMsgSteamNetworkingP2PRendezvous.ReliableMessage reliable_messages = 13;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_reliable_messages_size();
      for (const auto& msg : this_._internal_reliable_messages()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated .CMsgSteamNetworkingP2PRendezvous.ApplicationMessage application_messages = 15;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1UL * this_._internal_application_messages_size();
      for (const auto& msg : this_._internal_application_messages()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional bytes sdr_routes = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_sdr_routes());
    }
    // optional string from_identity = 8;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_from_identity());
    }
    // optional string to_identity = 10;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_to_identity());
    }
    // optional bytes hosted_server_ticket = 14;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_hosted_server_ticket());
    }
    // optional .CMsgSteamNetworkingP2PRendezvous.ConnectRequest connect_request = 4;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.connect_request_);
    }
    // optional .CMsgSteamNetworkingP2PRendezvous.ConnectOK connect_ok = 5;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.connect_ok_);
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00006500U)) {
    // optional .CMsgSteamNetworkingP2PRendezvous.ConnectionClosed connection_closed = 6;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.connection_closed_);
    }
    // optional uint32 ack_peer_routes_revision = 3;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_ack_peer_routes_revision());
    }
    // optional uint32 ack_reliable_msg = 11;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_ack_reliable_msg());
    }
    // optional uint32 first_reliable_msg = 12;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_first_reliable_msg());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingP2PRendezvous::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingP2PRendezvous*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingP2PRendezvous&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingP2PRendezvous)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_reliable_messages()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_reliable_messages());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_application_messages()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_application_messages());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_sdr_routes(from._internal_sdr_routes());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_from_identity(from._internal_from_identity());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_to_identity(from._internal_to_identity());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_hosted_server_ticket(from._internal_hosted_server_ticket());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      ABSL_DCHECK(from._impl_.connect_request_ != nullptr);
      if (_this->_impl_.connect_request_ == nullptr) {
        _this->_impl_.connect_request_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connect_request_);
      } else {
        _this->_impl_.connect_request_->MergeFrom(*from._impl_.connect_request_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      ABSL_DCHECK(from._impl_.connect_ok_ != nullptr);
      if (_this->_impl_.connect_ok_ == nullptr) {
        _this->_impl_.connect_ok_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connect_ok_);
      } else {
        _this->_impl_.connect_ok_->MergeFrom(*from._impl_.connect_ok_);
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      ABSL_DCHECK(from._impl_.connection_closed_ != nullptr);
      if (_this->_impl_.connection_closed_ == nullptr) {
        _this->_impl_.connection_closed_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.connection_closed_);
      } else {
        _this->_impl_.connection_closed_->MergeFrom(*from._impl_.connection_closed_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.to_connection_id_ = from._impl_.to_connection_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.ack_peer_routes_revision_ = from._impl_.ack_peer_routes_revision_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.ice_enabled_ = from._impl_.ice_enabled_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.from_connection_id_ = from._impl_.from_connection_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.ack_reliable_msg_ = from._impl_.ack_reliable_msg_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.first_reliable_msg_ = from._impl_.first_reliable_msg_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingP2PRendezvous::InternalSwap(CMsgSteamNetworkingP2PRendezvous* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.reliable_messages_.InternalSwap(&other->_impl_.reliable_messages_);
  _impl_.application_messages_.InternalSwap(&other->_impl_.application_messages_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.sdr_routes_, &other->_impl_.sdr_routes_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.from_identity_, &other->_impl_.from_identity_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.to_identity_, &other->_impl_.to_identity_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.hosted_server_ticket_, &other->_impl_.hosted_server_ticket_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.first_reliable_msg_)
      + sizeof(CMsgSteamNetworkingP2PRendezvous::_impl_.first_reliable_msg_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingP2PRendezvous, _impl_.connect_request_)>(
          reinterpret_cast<char*>(&_impl_.connect_request_),
          reinterpret_cast<char*>(&other->_impl_.connect_request_));
}

::google::protobuf::Metadata CMsgSteamNetworkingP2PRendezvous::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// ===================================================================

CMsgSteamNetworkingICESessionSummary::CMsgSteamNetworkingICESessionSummary(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingICESessionSummary_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:CMsgSteamNetworkingICESessionSummary)
}
CMsgSteamNetworkingICESessionSummary::CMsgSteamNetworkingICESessionSummary(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CMsgSteamNetworkingICESessionSummary& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::Message(arena, CMsgSteamNetworkingICESessionSummary_get_class_data()),
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::Message(arena),
#endif  // PROTOBUF_CUSTOM_VTABLE
      _impl_(from._impl_) {
  _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}
PROTOBUF_NDEBUG_INLINE CMsgSteamNetworkingICESessionSummary::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void CMsgSteamNetworkingICESessionSummary::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, local_candidate_types_),
           0,
           offsetof(Impl_, best_time_) -
               offsetof(Impl_, local_candidate_types_) +
               sizeof(Impl_::best_time_));
}
CMsgSteamNetworkingICESessionSummary::~CMsgSteamNetworkingICESessionSummary() {
  // @@protoc_insertion_point(destructor:CMsgSteamNetworkingICESessionSummary)
  SharedDtor(*this);
}
inline void CMsgSteamNetworkingICESessionSummary::SharedDtor(MessageLite& self) {
  CMsgSteamNetworkingICESessionSummary& this_ = static_cast<CMsgSteamNetworkingICESessionSummary&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
    ::google::protobuf::internal::ClassDataFull CMsgSteamNetworkingICESessionSummary_class_data_ =
        CMsgSteamNetworkingICESessionSummary::InternalGenerateClassData_(CMsgSteamNetworkingICESessionSummary_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingICESessionSummary::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingICESessionSummary_class_data_);
  ::google::protobuf::internal::PrefetchToLocalCache(CMsgSteamNetworkingICESessionSummary_class_data_.tc_table);
  return CMsgSteamNetworkingICESessionSummary_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
CMsgSteamNetworkingICESessionSummary::GetClassData() const {
  ::google::protobuf::internal::PrefetchToLocalCache(&CMsgSteamNetworkingICESessionSummary_globals_);
  ::google::protobuf::internal::PrefetchToLocalCache(
      ::google::protobuf::internal::MessageGlobalsBase::ToParseTableBase(&CMsgSteamNetworkingICESessionSummary_globals_));
  return CMsgSteamNetworkingICESessionSummary_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const CMsgSteamNetworkingICESessionSummary::ParseTableT_
    CMsgSteamNetworkingICESessionSummary::_table_ =
        CMsgSteamNetworkingICESessionSummary::InternalGenerateParseTable_(CMsgSteamNetworkingICESessionSummary_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void CMsgSteamNetworkingICESessionSummary::Clear() {
// @@protoc_insertion_point(message_clear_start:CMsgSteamNetworkingICESessionSummary)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    ::memset(&_impl_.local_candidate_types_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.selected_seconds_) -
        reinterpret_cast<char*>(&_impl_.local_candidate_types_)) + sizeof(_impl_.selected_seconds_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    ::memset(&_impl_.user_settings_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.best_time_) -
        reinterpret_cast<char*>(&_impl_.user_settings_)) + sizeof(_impl_.best_time_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingICESessionSummary::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const CMsgSteamNetworkingICESessionSummary& this_ = static_cast<const CMsgSteamNetworkingICESessionSummary&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL CMsgSteamNetworkingICESessionSummary::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const CMsgSteamNetworkingICESessionSummary& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:CMsgSteamNetworkingICESessionSummary)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint32 local_candidate_types = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        1, this_._internal_local_candidate_types(), target);
  }

  // optional uint32 remote_candidate_types = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        2, this_._internal_remote_candidate_types(), target);
  }

  // optional uint32 initial_route_kind = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        3, this_._internal_initial_route_kind(), target);
  }

  // optional uint32 initial_ping = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        4, this_._internal_initial_ping(), target);
  }

  // optional uint32 negotiation_ms = 5;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        5, this_._internal_negotiation_ms(), target);
  }

  // optional uint32 initial_score = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        6, this_._internal_initial_score(), target);
  }

  // optional uint32 failure_reason_code = 7;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        7, this_._internal_failure_reason_code(), target);
  }

  // optional uint32 selected_seconds = 12;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        12, this_._internal_selected_seconds(), target);
  }

  // optional uint32 user_settings = 13;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        13, this_._internal_user_settings(), target);
  }

  // optional uint32 ice_enable_var = 14;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        14, this_._internal_ice_enable_var(), target);
  }

  // optional uint32 local_candidate_types_allowed = 15;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        15, this_._internal_local_candidate_types_allowed(), target);
  }

  // optional uint32 best_route_kind = 16;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        16, this_._internal_best_route_kind(), target);
  }

  // optional uint32 best_ping = 17;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        17, this_._internal_best_ping(), target);
  }

  // optional uint32 best_score = 18;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        18, this_._internal_best_score(), target);
  }

  // optional uint32 best_time = 19;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        19, this_._internal_best_time(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target =
        ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
            this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:CMsgSteamNetworkingICESessionSummary)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t CMsgSteamNetworkingICESessionSummary::ByteSizeLong(const MessageLite& base) {
  const CMsgSteamNetworkingICESessionSummary& this_ = static_cast<const CMsgSteamNetworkingICESessionSummary&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t CMsgSteamNetworkingICESessionSummary::ByteSizeLong() const {
  const CMsgSteamNetworkingICESessionSummary& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:CMsgSteamNetworkingICESessionSummary)
  ::size_t total_size = 0;

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    // optional uint32 local_candidate_types = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_local_candidate_types());
    }
    // optional uint32 remote_candidate_types = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_remote_candidate_types());
    }
    // optional uint32 initial_route_kind = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_initial_route_kind());
    }
    // optional uint32 initial_ping = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_initial_ping());
    }
    // optional uint32 negotiation_ms = 5;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_negotiation_ms());
    }
    // optional uint32 initial_score = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_initial_score());
    }
    // optional uint32 failure_reason_code = 7;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_failure_reason_code());
    }
    // optional uint32 selected_seconds = 12;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_selected_seconds());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    // optional uint32 user_settings = 13;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_user_settings());
    }
    // optional uint32 ice_enable_var = 14;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_ice_enable_var());
    }
    // optional uint32 local_candidate_types_allowed = 15;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_local_candidate_types_allowed());
    }
    // optional uint32 best_route_kind = 16;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_best_route_kind());
    }
    // optional uint32 best_ping = 17;
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_best_ping());
    }
    // optional uint32 best_score = 18;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_best_score());
    }
    // optional uint32 best_time = 19;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_best_time());
    }
  }
  return this_.MaybeComputeUnknownFieldsSize(total_size,
                                             &this_._impl_._cached_size_);
}

void CMsgSteamNetworkingICESessionSummary::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<CMsgSteamNetworkingICESessionSummary*>(&to_msg);
  auto& from = static_cast<const CMsgSteamNetworkingICESessionSummary&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:CMsgSteamNetworkingICESessionSummary)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.local_candidate_types_ = from._impl_.local_candidate_types_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.remote_candidate_types_ = from._impl_.remote_candidate_types_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.initial_route_kind_ = from._impl_.initial_route_kind_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.initial_ping_ = from._impl_.initial_ping_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.negotiation_ms_ = from._impl_.negotiation_ms_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.initial_score_ = from._impl_.initial_score_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.failure_reason_code_ = from._impl_.failure_reason_code_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.selected_seconds_ = from._impl_.selected_seconds_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00007f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_impl_.user_settings_ = from._impl_.user_settings_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.ice_enable_var_ = from._impl_.ice_enable_var_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.local_candidate_types_allowed_ = from._impl_.local_candidate_types_allowed_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.best_route_kind_ = from._impl_.best_route_kind_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.best_ping_ = from._impl_.best_ping_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.best_score_ = from._impl_.best_score_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.best_time_ = from._impl_.best_time_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
      from._internal_metadata_);
}

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


void CMsgSteamNetworkingICESessionSummary::InternalSwap(CMsgSteamNetworkingICESessionSummary* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.best_time_)
      + sizeof(CMsgSteamNetworkingICESessionSummary::_impl_.best_time_)
      - PROTOBUF_FIELD_OFFSET(CMsgSteamNetworkingICESessionSummary, _impl_.local_candidate_types_)>(
          reinterpret_cast<char*>(&_impl_.local_candidate_types_),
          reinterpret_cast<char*>(&other->_impl_.local_candidate_types_));
}

::google::protobuf::Metadata CMsgSteamNetworkingICESessionSummary::GetMetadata() const {
  return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
}
// @@protoc_insertion_point(namespace_scope)
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google
// @@protoc_insertion_point(global_scope)
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
    _static_init2_ [[maybe_unused]] =
        (::_pbi::AddDescriptors(&descriptor_table_steamnetworkingsockets_5fmessages_2eproto),
         ::std::false_type{});
#include "google/protobuf/port_undef.inc"
