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

#include "steammessages_gamenetworkingui.pb.h"

#include <algorithm>

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/extension_set.h>
#include <google/protobuf/wire_format_lite.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>

PROTOBUF_PRAGMA_INIT_SEG

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

PROTOBUF_CONSTEXPR CGameNetworkingUI_GlobalState::CGameNetworkingUI_GlobalState(
    ::_pbi::ConstantInitialized) {}
struct CGameNetworkingUI_GlobalStateDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CGameNetworkingUI_GlobalStateDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CGameNetworkingUI_GlobalStateDefaultTypeInternal() {}
  union {
    CGameNetworkingUI_GlobalState _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CGameNetworkingUI_GlobalStateDefaultTypeInternal _CGameNetworkingUI_GlobalState_default_instance_;
PROTOBUF_CONSTEXPR CGameNetworkingUI_ConnectionState::CGameNetworkingUI_ConnectionState(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.connection_key_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.identity_local_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.identity_remote_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.close_message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.status_loc_token_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sdrpopid_local_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sdrpopid_remote_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.address_remote_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.p2p_routing_)*/nullptr
  , /*decltype(_impl_.e2e_quality_local_)*/nullptr
  , /*decltype(_impl_.e2e_quality_remote_)*/nullptr
  , /*decltype(_impl_.front_quality_local_)*/nullptr
  , /*decltype(_impl_.front_quality_remote_)*/nullptr
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.connection_id_local_)*/0u
  , /*decltype(_impl_.connection_state_)*/0u
  , /*decltype(_impl_.start_time_)*/0u
  , /*decltype(_impl_.close_time_)*/0u
  , /*decltype(_impl_.close_reason_)*/0u
  , /*decltype(_impl_.transport_kind_)*/0u
  , /*decltype(_impl_.ping_interior_)*/0u
  , /*decltype(_impl_.ping_remote_front_)*/0u
  , /*decltype(_impl_.ping_default_internet_route_)*/0u
  , /*decltype(_impl_.e2e_quality_remote_instantaneous_time_)*/uint64_t{0u}
  , /*decltype(_impl_.e2e_quality_remote_lifetime_time_)*/uint64_t{0u}
  , /*decltype(_impl_.front_quality_remote_instantaneous_time_)*/uint64_t{0u}
  , /*decltype(_impl_.front_quality_remote_lifetime_time_)*/uint64_t{0u}} {}
struct CGameNetworkingUI_ConnectionStateDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CGameNetworkingUI_ConnectionStateDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CGameNetworkingUI_ConnectionStateDefaultTypeInternal() {}
  union {
    CGameNetworkingUI_ConnectionState _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CGameNetworkingUI_ConnectionStateDefaultTypeInternal _CGameNetworkingUI_ConnectionState_default_instance_;
PROTOBUF_CONSTEXPR CGameNetworkingUI_Message::CGameNetworkingUI_Message(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.connection_state_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CGameNetworkingUI_MessageDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CGameNetworkingUI_MessageDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CGameNetworkingUI_MessageDefaultTypeInternal() {}
  union {
    CGameNetworkingUI_Message _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CGameNetworkingUI_MessageDefaultTypeInternal _CGameNetworkingUI_Message_default_instance_;
PROTOBUF_CONSTEXPR CGameNetworkingUI_ConnectionSummary::CGameNetworkingUI_ConnectionSummary(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.sdrpop_local_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sdrpop_remote_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.transport_kind_)*/0u
  , /*decltype(_impl_.ping_ms_)*/0u
  , /*decltype(_impl_.packet_loss_)*/0
  , /*decltype(_impl_.ping_default_internet_route_)*/0u
  , /*decltype(_impl_.ip_was_shared_)*/false
  , /*decltype(_impl_.connection_state_)*/0u} {}
struct CGameNetworkingUI_ConnectionSummaryDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CGameNetworkingUI_ConnectionSummaryDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CGameNetworkingUI_ConnectionSummaryDefaultTypeInternal() {}
  union {
    CGameNetworkingUI_ConnectionSummary _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CGameNetworkingUI_ConnectionSummaryDefaultTypeInternal _CGameNetworkingUI_ConnectionSummary_default_instance_;
PROTOBUF_CONSTEXPR CGameNetworkingUI_AppSummary::CGameNetworkingUI_AppSummary(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_._has_bits_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_.main_cxn_)*/nullptr
  , /*decltype(_impl_.appid_)*/0u
  , /*decltype(_impl_.ip_was_shared_with_friend_)*/false
  , /*decltype(_impl_.ip_was_shared_with_nonfriend_)*/false
  , /*decltype(_impl_.active_connections_)*/0u} {}
struct CGameNetworkingUI_AppSummaryDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CGameNetworkingUI_AppSummaryDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CGameNetworkingUI_AppSummaryDefaultTypeInternal() {}
  union {
    CGameNetworkingUI_AppSummary _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CGameNetworkingUI_AppSummaryDefaultTypeInternal _CGameNetworkingUI_AppSummary_default_instance_;
static ::_pb::Metadata file_level_metadata_steammessages_5fgamenetworkingui_2eproto[5];
static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_steammessages_5fgamenetworkingui_2eproto = nullptr;
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_steammessages_5fgamenetworkingui_2eproto = nullptr;

const uint32_t TableStruct_steammessages_5fgamenetworkingui_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_GlobalState, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.connection_key_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.connection_id_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.identity_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.identity_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.connection_state_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.start_time_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.close_time_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.close_reason_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.close_message_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.status_loc_token_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.transport_kind_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.sdrpopid_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.sdrpopid_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.address_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.p2p_routing_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.ping_interior_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.ping_remote_front_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.ping_default_internet_route_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.e2e_quality_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.e2e_quality_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.e2e_quality_remote_instantaneous_time_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.e2e_quality_remote_lifetime_time_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.front_quality_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.front_quality_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.front_quality_remote_instantaneous_time_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionState, _impl_.front_quality_remote_lifetime_time_),
  0,
  13,
  14,
  1,
  2,
  15,
  16,
  17,
  18,
  3,
  4,
  19,
  5,
  6,
  7,
  8,
  20,
  21,
  22,
  9,
  10,
  23,
  24,
  11,
  12,
  25,
  26,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_Message, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_Message, _impl_.connection_state_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.transport_kind_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.connection_state_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.sdrpop_local_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.sdrpop_remote_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.ping_ms_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.packet_loss_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.ping_default_internet_route_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_ConnectionSummary, _impl_.ip_was_shared_),
  2,
  7,
  0,
  1,
  3,
  4,
  5,
  6,
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_._has_bits_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_.appid_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_.ip_was_shared_with_friend_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_.ip_was_shared_with_nonfriend_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_.active_connections_),
  PROTOBUF_FIELD_OFFSET(::CGameNetworkingUI_AppSummary, _impl_.main_cxn_),
  1,
  2,
  3,
  4,
  0,
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::CGameNetworkingUI_GlobalState)},
  { 6, 39, -1, sizeof(::CGameNetworkingUI_ConnectionState)},
  { 66, -1, -1, sizeof(::CGameNetworkingUI_Message)},
  { 73, 87, -1, sizeof(::CGameNetworkingUI_ConnectionSummary)},
  { 95, 106, -1, sizeof(::CGameNetworkingUI_AppSummary)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::_CGameNetworkingUI_GlobalState_default_instance_._instance,
  &::_CGameNetworkingUI_ConnectionState_default_instance_._instance,
  &::_CGameNetworkingUI_Message_default_instance_._instance,
  &::_CGameNetworkingUI_ConnectionSummary_default_instance_._instance,
  &::_CGameNetworkingUI_AppSummary_default_instance_._instance,
};

const char descriptor_table_protodef_steammessages_5fgamenetworkingui_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n$steammessages_gamenetworkingui.proto\032%"
  "steamnetworkingsockets_messages.proto\032 s"
  "teamdatagram_messages_sdr.proto\"\037\n\035CGame"
  "NetworkingUI_GlobalState\"\317\007\n!CGameNetwor"
  "kingUI_ConnectionState\022\026\n\016connection_key"
  "\030\001 \001(\t\022\r\n\005appid\030\002 \001(\r\022\033\n\023connection_id_l"
  "ocal\030\003 \001(\007\022\026\n\016identity_local\030\004 \001(\t\022\027\n\017id"
  "entity_remote\030\005 \001(\t\022\030\n\020connection_state\030"
  "\n \001(\r\022\022\n\nstart_time\030\014 \001(\r\022\022\n\nclose_time\030"
  "\r \001(\r\022\024\n\014close_reason\030\016 \001(\r\022\025\n\rclose_mes"
  "sage\030\017 \001(\t\022\030\n\020status_loc_token\030\020 \001(\t\022\026\n\016"
  "transport_kind\030\024 \001(\r\022\026\n\016sdrpopid_local\030\025"
  " \001(\t\022\027\n\017sdrpopid_remote\030\026 \001(\t\022\026\n\016address"
  "_remote\030\027 \001(\t\0228\n\013p2p_routing\030\030 \001(\0132#.CMs"
  "gSteamDatagramP2PRoutingSummary\022\025\n\rping_"
  "interior\030\031 \001(\r\022\031\n\021ping_remote_front\030\032 \001("
  "\r\022#\n\033ping_default_internet_route\030\033 \001(\r\022>"
  "\n\021e2e_quality_local\030\036 \001(\0132#.CMsgSteamDat"
  "agramConnectionQuality\022\?\n\022e2e_quality_re"
  "mote\030\037 \001(\0132#.CMsgSteamDatagramConnection"
  "Quality\022-\n%e2e_quality_remote_instantane"
  "ous_time\030  \001(\004\022(\n e2e_quality_remote_lif"
  "etime_time\030! \001(\004\022@\n\023front_quality_local\030"
  "( \001(\0132#.CMsgSteamDatagramConnectionQuali"
  "ty\022A\n\024front_quality_remote\030) \001(\0132#.CMsgS"
  "teamDatagramConnectionQuality\022/\n\'front_q"
  "uality_remote_instantaneous_time\030* \001(\004\022*"
  "\n\"front_quality_remote_lifetime_time\030+ \001"
  "(\004\"Y\n\031CGameNetworkingUI_Message\022<\n\020conne"
  "ction_state\030\001 \003(\0132\".CGameNetworkingUI_Co"
  "nnectionState\"\346\001\n#CGameNetworkingUI_Conn"
  "ectionSummary\022\026\n\016transport_kind\030\001 \001(\r\022\030\n"
  "\020connection_state\030\010 \001(\r\022\024\n\014sdrpop_local\030"
  "\002 \001(\t\022\025\n\rsdrpop_remote\030\003 \001(\t\022\017\n\007ping_ms\030"
  "\004 \001(\r\022\023\n\013packet_loss\030\005 \001(\002\022#\n\033ping_defau"
  "lt_internet_route\030\006 \001(\r\022\025\n\rip_was_shared"
  "\030\007 \001(\010\"\312\001\n\034CGameNetworkingUI_AppSummary\022"
  "\r\n\005appid\030\001 \001(\r\022!\n\031ip_was_shared_with_fri"
  "end\030\n \001(\010\022$\n\034ip_was_shared_with_nonfrien"
  "d\030\013 \001(\010\022\032\n\022active_connections\030\024 \001(\r\0226\n\010m"
  "ain_cxn\030\036 \001(\0132$.CGameNetworkingUI_Connec"
  "tionSummaryB\005H\001\200\001\001"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_steammessages_5fgamenetworkingui_2eproto_deps[2] = {
  &::descriptor_table_steamdatagram_5fmessages_5fsdr_2eproto,
  &::descriptor_table_steamnetworkingsockets_5fmessages_2eproto,
};
static ::_pbi::once_flag descriptor_table_steammessages_5fgamenetworkingui_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_steammessages_5fgamenetworkingui_2eproto = {
    false, false, 1658, descriptor_table_protodef_steammessages_5fgamenetworkingui_2eproto,
    "steammessages_gamenetworkingui.proto",
    &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once, descriptor_table_steammessages_5fgamenetworkingui_2eproto_deps, 2, 5,
    schemas, file_default_instances, TableStruct_steammessages_5fgamenetworkingui_2eproto::offsets,
    file_level_metadata_steammessages_5fgamenetworkingui_2eproto, file_level_enum_descriptors_steammessages_5fgamenetworkingui_2eproto,
    file_level_service_descriptors_steammessages_5fgamenetworkingui_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter() {
  return &descriptor_table_steammessages_5fgamenetworkingui_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_steammessages_5fgamenetworkingui_2eproto(&descriptor_table_steammessages_5fgamenetworkingui_2eproto);

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

class CGameNetworkingUI_GlobalState::_Internal {
 public:
};

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





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







::PROTOBUF_NAMESPACE_ID::Metadata CGameNetworkingUI_GlobalState::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter, &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once,
      file_level_metadata_steammessages_5fgamenetworkingui_2eproto[0]);
}

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

class CGameNetworkingUI_ConnectionState::_Internal {
 public:
  using HasBits = decltype(std::declval<CGameNetworkingUI_ConnectionState>()._impl_._has_bits_);
  static void set_has_connection_key(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 8192u;
  }
  static void set_has_connection_id_local(HasBits* has_bits) {
    (*has_bits)[0] |= 16384u;
  }
  static void set_has_identity_local(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_identity_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_connection_state(HasBits* has_bits) {
    (*has_bits)[0] |= 32768u;
  }
  static void set_has_start_time(HasBits* has_bits) {
    (*has_bits)[0] |= 65536u;
  }
  static void set_has_close_time(HasBits* has_bits) {
    (*has_bits)[0] |= 131072u;
  }
  static void set_has_close_reason(HasBits* has_bits) {
    (*has_bits)[0] |= 262144u;
  }
  static void set_has_close_message(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_status_loc_token(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_transport_kind(HasBits* has_bits) {
    (*has_bits)[0] |= 524288u;
  }
  static void set_has_sdrpopid_local(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_sdrpopid_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
  static void set_has_address_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static const ::CMsgSteamDatagramP2PRoutingSummary& p2p_routing(const CGameNetworkingUI_ConnectionState* msg);
  static void set_has_p2p_routing(HasBits* has_bits) {
    (*has_bits)[0] |= 256u;
  }
  static void set_has_ping_interior(HasBits* has_bits) {
    (*has_bits)[0] |= 1048576u;
  }
  static void set_has_ping_remote_front(HasBits* has_bits) {
    (*has_bits)[0] |= 2097152u;
  }
  static void set_has_ping_default_internet_route(HasBits* has_bits) {
    (*has_bits)[0] |= 4194304u;
  }
  static const ::CMsgSteamDatagramConnectionQuality& e2e_quality_local(const CGameNetworkingUI_ConnectionState* msg);
  static void set_has_e2e_quality_local(HasBits* has_bits) {
    (*has_bits)[0] |= 512u;
  }
  static const ::CMsgSteamDatagramConnectionQuality& e2e_quality_remote(const CGameNetworkingUI_ConnectionState* msg);
  static void set_has_e2e_quality_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 1024u;
  }
  static void set_has_e2e_quality_remote_instantaneous_time(HasBits* has_bits) {
    (*has_bits)[0] |= 8388608u;
  }
  static void set_has_e2e_quality_remote_lifetime_time(HasBits* has_bits) {
    (*has_bits)[0] |= 16777216u;
  }
  static const ::CMsgSteamDatagramConnectionQuality& front_quality_local(const CGameNetworkingUI_ConnectionState* msg);
  static void set_has_front_quality_local(HasBits* has_bits) {
    (*has_bits)[0] |= 2048u;
  }
  static const ::CMsgSteamDatagramConnectionQuality& front_quality_remote(const CGameNetworkingUI_ConnectionState* msg);
  static void set_has_front_quality_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 4096u;
  }
  static void set_has_front_quality_remote_instantaneous_time(HasBits* has_bits) {
    (*has_bits)[0] |= 33554432u;
  }
  static void set_has_front_quality_remote_lifetime_time(HasBits* has_bits) {
    (*has_bits)[0] |= 67108864u;
  }
};

const ::CMsgSteamDatagramP2PRoutingSummary&
CGameNetworkingUI_ConnectionState::_Internal::p2p_routing(const CGameNetworkingUI_ConnectionState* msg) {
  return *msg->_impl_.p2p_routing_;
}
const ::CMsgSteamDatagramConnectionQuality&
CGameNetworkingUI_ConnectionState::_Internal::e2e_quality_local(const CGameNetworkingUI_ConnectionState* msg) {
  return *msg->_impl_.e2e_quality_local_;
}
const ::CMsgSteamDatagramConnectionQuality&
CGameNetworkingUI_ConnectionState::_Internal::e2e_quality_remote(const CGameNetworkingUI_ConnectionState* msg) {
  return *msg->_impl_.e2e_quality_remote_;
}
const ::CMsgSteamDatagramConnectionQuality&
CGameNetworkingUI_ConnectionState::_Internal::front_quality_local(const CGameNetworkingUI_ConnectionState* msg) {
  return *msg->_impl_.front_quality_local_;
}
const ::CMsgSteamDatagramConnectionQuality&
CGameNetworkingUI_ConnectionState::_Internal::front_quality_remote(const CGameNetworkingUI_ConnectionState* msg) {
  return *msg->_impl_.front_quality_remote_;
}
void CGameNetworkingUI_ConnectionState::clear_p2p_routing() {
  if (_impl_.p2p_routing_ != nullptr) _impl_.p2p_routing_->Clear();
  _impl_._has_bits_[0] &= ~0x00000100u;
}
void CGameNetworkingUI_ConnectionState::clear_e2e_quality_local() {
  if (_impl_.e2e_quality_local_ != nullptr) _impl_.e2e_quality_local_->Clear();
  _impl_._has_bits_[0] &= ~0x00000200u;
}
void CGameNetworkingUI_ConnectionState::clear_e2e_quality_remote() {
  if (_impl_.e2e_quality_remote_ != nullptr) _impl_.e2e_quality_remote_->Clear();
  _impl_._has_bits_[0] &= ~0x00000400u;
}
void CGameNetworkingUI_ConnectionState::clear_front_quality_local() {
  if (_impl_.front_quality_local_ != nullptr) _impl_.front_quality_local_->Clear();
  _impl_._has_bits_[0] &= ~0x00000800u;
}
void CGameNetworkingUI_ConnectionState::clear_front_quality_remote() {
  if (_impl_.front_quality_remote_ != nullptr) _impl_.front_quality_remote_->Clear();
  _impl_._has_bits_[0] &= ~0x00001000u;
}
CGameNetworkingUI_ConnectionState::CGameNetworkingUI_ConnectionState(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CGameNetworkingUI_ConnectionState)
}
CGameNetworkingUI_ConnectionState::CGameNetworkingUI_ConnectionState(const CGameNetworkingUI_ConnectionState& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CGameNetworkingUI_ConnectionState* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.connection_key_){}
    , decltype(_impl_.identity_local_){}
    , decltype(_impl_.identity_remote_){}
    , decltype(_impl_.close_message_){}
    , decltype(_impl_.status_loc_token_){}
    , decltype(_impl_.sdrpopid_local_){}
    , decltype(_impl_.sdrpopid_remote_){}
    , decltype(_impl_.address_remote_){}
    , decltype(_impl_.p2p_routing_){nullptr}
    , decltype(_impl_.e2e_quality_local_){nullptr}
    , decltype(_impl_.e2e_quality_remote_){nullptr}
    , decltype(_impl_.front_quality_local_){nullptr}
    , decltype(_impl_.front_quality_remote_){nullptr}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.connection_id_local_){}
    , decltype(_impl_.connection_state_){}
    , decltype(_impl_.start_time_){}
    , decltype(_impl_.close_time_){}
    , decltype(_impl_.close_reason_){}
    , decltype(_impl_.transport_kind_){}
    , decltype(_impl_.ping_interior_){}
    , decltype(_impl_.ping_remote_front_){}
    , decltype(_impl_.ping_default_internet_route_){}
    , decltype(_impl_.e2e_quality_remote_instantaneous_time_){}
    , decltype(_impl_.e2e_quality_remote_lifetime_time_){}
    , decltype(_impl_.front_quality_remote_instantaneous_time_){}
    , decltype(_impl_.front_quality_remote_lifetime_time_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.connection_key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.connection_key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_connection_key()) {
    _this->_impl_.connection_key_.Set(from._internal_connection_key(), 
      _this->GetArenaForAllocation());
  }
  _impl_.identity_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.identity_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_identity_local()) {
    _this->_impl_.identity_local_.Set(from._internal_identity_local(), 
      _this->GetArenaForAllocation());
  }
  _impl_.identity_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.identity_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_identity_remote()) {
    _this->_impl_.identity_remote_.Set(from._internal_identity_remote(), 
      _this->GetArenaForAllocation());
  }
  _impl_.close_message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.close_message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_close_message()) {
    _this->_impl_.close_message_.Set(from._internal_close_message(), 
      _this->GetArenaForAllocation());
  }
  _impl_.status_loc_token_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.status_loc_token_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_status_loc_token()) {
    _this->_impl_.status_loc_token_.Set(from._internal_status_loc_token(), 
      _this->GetArenaForAllocation());
  }
  _impl_.sdrpopid_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpopid_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_sdrpopid_local()) {
    _this->_impl_.sdrpopid_local_.Set(from._internal_sdrpopid_local(), 
      _this->GetArenaForAllocation());
  }
  _impl_.sdrpopid_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpopid_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_sdrpopid_remote()) {
    _this->_impl_.sdrpopid_remote_.Set(from._internal_sdrpopid_remote(), 
      _this->GetArenaForAllocation());
  }
  _impl_.address_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_address_remote()) {
    _this->_impl_.address_remote_.Set(from._internal_address_remote(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_p2p_routing()) {
    _this->_impl_.p2p_routing_ = new ::CMsgSteamDatagramP2PRoutingSummary(*from._impl_.p2p_routing_);
  }
  if (from._internal_has_e2e_quality_local()) {
    _this->_impl_.e2e_quality_local_ = new ::CMsgSteamDatagramConnectionQuality(*from._impl_.e2e_quality_local_);
  }
  if (from._internal_has_e2e_quality_remote()) {
    _this->_impl_.e2e_quality_remote_ = new ::CMsgSteamDatagramConnectionQuality(*from._impl_.e2e_quality_remote_);
  }
  if (from._internal_has_front_quality_local()) {
    _this->_impl_.front_quality_local_ = new ::CMsgSteamDatagramConnectionQuality(*from._impl_.front_quality_local_);
  }
  if (from._internal_has_front_quality_remote()) {
    _this->_impl_.front_quality_remote_ = new ::CMsgSteamDatagramConnectionQuality(*from._impl_.front_quality_remote_);
  }
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.front_quality_remote_lifetime_time_) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.front_quality_remote_lifetime_time_));
  // @@protoc_insertion_point(copy_constructor:CGameNetworkingUI_ConnectionState)
}

inline void CGameNetworkingUI_ConnectionState::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.connection_key_){}
    , decltype(_impl_.identity_local_){}
    , decltype(_impl_.identity_remote_){}
    , decltype(_impl_.close_message_){}
    , decltype(_impl_.status_loc_token_){}
    , decltype(_impl_.sdrpopid_local_){}
    , decltype(_impl_.sdrpopid_remote_){}
    , decltype(_impl_.address_remote_){}
    , decltype(_impl_.p2p_routing_){nullptr}
    , decltype(_impl_.e2e_quality_local_){nullptr}
    , decltype(_impl_.e2e_quality_remote_){nullptr}
    , decltype(_impl_.front_quality_local_){nullptr}
    , decltype(_impl_.front_quality_remote_){nullptr}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.connection_id_local_){0u}
    , decltype(_impl_.connection_state_){0u}
    , decltype(_impl_.start_time_){0u}
    , decltype(_impl_.close_time_){0u}
    , decltype(_impl_.close_reason_){0u}
    , decltype(_impl_.transport_kind_){0u}
    , decltype(_impl_.ping_interior_){0u}
    , decltype(_impl_.ping_remote_front_){0u}
    , decltype(_impl_.ping_default_internet_route_){0u}
    , decltype(_impl_.e2e_quality_remote_instantaneous_time_){uint64_t{0u}}
    , decltype(_impl_.e2e_quality_remote_lifetime_time_){uint64_t{0u}}
    , decltype(_impl_.front_quality_remote_instantaneous_time_){uint64_t{0u}}
    , decltype(_impl_.front_quality_remote_lifetime_time_){uint64_t{0u}}
  };
  _impl_.connection_key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.connection_key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.identity_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.identity_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.identity_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.identity_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.close_message_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.close_message_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.status_loc_token_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.status_loc_token_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.sdrpopid_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpopid_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.sdrpopid_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpopid_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.address_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.address_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CGameNetworkingUI_ConnectionState::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.connection_key_.Destroy();
  _impl_.identity_local_.Destroy();
  _impl_.identity_remote_.Destroy();
  _impl_.close_message_.Destroy();
  _impl_.status_loc_token_.Destroy();
  _impl_.sdrpopid_local_.Destroy();
  _impl_.sdrpopid_remote_.Destroy();
  _impl_.address_remote_.Destroy();
  if (this != internal_default_instance()) delete _impl_.p2p_routing_;
  if (this != internal_default_instance()) delete _impl_.e2e_quality_local_;
  if (this != internal_default_instance()) delete _impl_.e2e_quality_remote_;
  if (this != internal_default_instance()) delete _impl_.front_quality_local_;
  if (this != internal_default_instance()) delete _impl_.front_quality_remote_;
}

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

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

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.connection_key_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.identity_local_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000004u) {
      _impl_.identity_remote_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000008u) {
      _impl_.close_message_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000010u) {
      _impl_.status_loc_token_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000020u) {
      _impl_.sdrpopid_local_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000040u) {
      _impl_.sdrpopid_remote_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000080u) {
      _impl_.address_remote_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x00001f00u) {
    if (cached_has_bits & 0x00000100u) {
      GOOGLE_DCHECK(_impl_.p2p_routing_ != nullptr);
      _impl_.p2p_routing_->Clear();
    }
    if (cached_has_bits & 0x00000200u) {
      GOOGLE_DCHECK(_impl_.e2e_quality_local_ != nullptr);
      _impl_.e2e_quality_local_->Clear();
    }
    if (cached_has_bits & 0x00000400u) {
      GOOGLE_DCHECK(_impl_.e2e_quality_remote_ != nullptr);
      _impl_.e2e_quality_remote_->Clear();
    }
    if (cached_has_bits & 0x00000800u) {
      GOOGLE_DCHECK(_impl_.front_quality_local_ != nullptr);
      _impl_.front_quality_local_->Clear();
    }
    if (cached_has_bits & 0x00001000u) {
      GOOGLE_DCHECK(_impl_.front_quality_remote_ != nullptr);
      _impl_.front_quality_remote_->Clear();
    }
  }
  if (cached_has_bits & 0x0000e000u) {
    ::memset(&_impl_.appid_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.connection_state_) -
        reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.connection_state_));
  }
  if (cached_has_bits & 0x00ff0000u) {
    ::memset(&_impl_.start_time_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.e2e_quality_remote_instantaneous_time_) -
        reinterpret_cast<char*>(&_impl_.start_time_)) + sizeof(_impl_.e2e_quality_remote_instantaneous_time_));
  }
  if (cached_has_bits & 0x07000000u) {
    ::memset(&_impl_.e2e_quality_remote_lifetime_time_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.front_quality_remote_lifetime_time_) -
        reinterpret_cast<char*>(&_impl_.e2e_quality_remote_lifetime_time_)) + sizeof(_impl_.front_quality_remote_lifetime_time_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CGameNetworkingUI_ConnectionState::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional string connection_key = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_connection_key();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.connection_key");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 appid = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional fixed32 connection_id_local = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_connection_id_local(&has_bits);
          _impl_.connection_id_local_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<uint32_t>(ptr);
          ptr += sizeof(uint32_t);
        } else
          goto handle_unusual;
        continue;
      // optional string identity_local = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_identity_local();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.identity_local");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string identity_remote = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_identity_remote();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.identity_remote");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 connection_state = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_connection_state(&has_bits);
          _impl_.connection_state_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 start_time = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) {
          _Internal::set_has_start_time(&has_bits);
          _impl_.start_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 close_time = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 104)) {
          _Internal::set_has_close_time(&has_bits);
          _impl_.close_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 close_reason = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 112)) {
          _Internal::set_has_close_reason(&has_bits);
          _impl_.close_reason_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string close_message = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 122)) {
          auto str = _internal_mutable_close_message();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.close_message");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string status_loc_token = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          auto str = _internal_mutable_status_loc_token();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.status_loc_token");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 transport_kind = 20;
      case 20:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 160)) {
          _Internal::set_has_transport_kind(&has_bits);
          _impl_.transport_kind_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string sdrpopid_local = 21;
      case 21:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 170)) {
          auto str = _internal_mutable_sdrpopid_local();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.sdrpopid_local");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string sdrpopid_remote = 22;
      case 22:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 178)) {
          auto str = _internal_mutable_sdrpopid_remote();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.sdrpopid_remote");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string address_remote = 23;
      case 23:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 186)) {
          auto str = _internal_mutable_address_remote();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionState.address_remote");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing = 24;
      case 24:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 194)) {
          ptr = ctx->ParseMessage(_internal_mutable_p2p_routing(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ping_interior = 25;
      case 25:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 200)) {
          _Internal::set_has_ping_interior(&has_bits);
          _impl_.ping_interior_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ping_remote_front = 26;
      case 26:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 208)) {
          _Internal::set_has_ping_remote_front(&has_bits);
          _impl_.ping_remote_front_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ping_default_internet_route = 27;
      case 27:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 216)) {
          _Internal::set_has_ping_default_internet_route(&has_bits);
          _impl_.ping_default_internet_route_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgSteamDatagramConnectionQuality e2e_quality_local = 30;
      case 30:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 242)) {
          ptr = ctx->ParseMessage(_internal_mutable_e2e_quality_local(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgSteamDatagramConnectionQuality e2e_quality_remote = 31;
      case 31:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 250)) {
          ptr = ctx->ParseMessage(_internal_mutable_e2e_quality_remote(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 e2e_quality_remote_instantaneous_time = 32;
      case 32:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 0)) {
          _Internal::set_has_e2e_quality_remote_instantaneous_time(&has_bits);
          _impl_.e2e_quality_remote_instantaneous_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 e2e_quality_remote_lifetime_time = 33;
      case 33:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_e2e_quality_remote_lifetime_time(&has_bits);
          _impl_.e2e_quality_remote_lifetime_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgSteamDatagramConnectionQuality front_quality_local = 40;
      case 40:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_front_quality_local(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CMsgSteamDatagramConnectionQuality front_quality_remote = 41;
      case 41:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr = ctx->ParseMessage(_internal_mutable_front_quality_remote(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 front_quality_remote_instantaneous_time = 42;
      case 42:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_front_quality_remote_instantaneous_time(&has_bits);
          _impl_.front_quality_remote_instantaneous_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint64 front_quality_remote_lifetime_time = 43;
      case 43:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_front_quality_remote_lifetime_time(&has_bits);
          _impl_.front_quality_remote_lifetime_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

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

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

  // optional fixed32 connection_id_local = 3;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteFixed32ToArray(3, this->_internal_connection_id_local(), target);
  }

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

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

  // optional uint32 connection_state = 10;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(10, this->_internal_connection_state(), target);
  }

  // optional uint32 start_time = 12;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(12, this->_internal_start_time(), target);
  }

  // optional uint32 close_time = 13;
  if (cached_has_bits & 0x00020000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(13, this->_internal_close_time(), target);
  }

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

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

  // optional string status_loc_token = 16;
  if (cached_has_bits & 0x00000010u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_status_loc_token().data(), static_cast<int>(this->_internal_status_loc_token().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CGameNetworkingUI_ConnectionState.status_loc_token");
    target = stream->WriteStringMaybeAliased(
        16, this->_internal_status_loc_token(), target);
  }

  // optional uint32 transport_kind = 20;
  if (cached_has_bits & 0x00080000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(20, this->_internal_transport_kind(), target);
  }

  // optional string sdrpopid_local = 21;
  if (cached_has_bits & 0x00000020u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_sdrpopid_local().data(), static_cast<int>(this->_internal_sdrpopid_local().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CGameNetworkingUI_ConnectionState.sdrpopid_local");
    target = stream->WriteStringMaybeAliased(
        21, this->_internal_sdrpopid_local(), target);
  }

  // optional string sdrpopid_remote = 22;
  if (cached_has_bits & 0x00000040u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_sdrpopid_remote().data(), static_cast<int>(this->_internal_sdrpopid_remote().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CGameNetworkingUI_ConnectionState.sdrpopid_remote");
    target = stream->WriteStringMaybeAliased(
        22, this->_internal_sdrpopid_remote(), target);
  }

  // optional string address_remote = 23;
  if (cached_has_bits & 0x00000080u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_address_remote().data(), static_cast<int>(this->_internal_address_remote().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "CGameNetworkingUI_ConnectionState.address_remote");
    target = stream->WriteStringMaybeAliased(
        23, this->_internal_address_remote(), target);
  }

  // optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing = 24;
  if (cached_has_bits & 0x00000100u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(24, _Internal::p2p_routing(this),
        _Internal::p2p_routing(this).GetCachedSize(), target, stream);
  }

  // optional uint32 ping_interior = 25;
  if (cached_has_bits & 0x00100000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(25, this->_internal_ping_interior(), target);
  }

  // optional uint32 ping_remote_front = 26;
  if (cached_has_bits & 0x00200000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(26, this->_internal_ping_remote_front(), target);
  }

  // optional uint32 ping_default_internet_route = 27;
  if (cached_has_bits & 0x00400000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(27, this->_internal_ping_default_internet_route(), target);
  }

  // optional .CMsgSteamDatagramConnectionQuality e2e_quality_local = 30;
  if (cached_has_bits & 0x00000200u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(30, _Internal::e2e_quality_local(this),
        _Internal::e2e_quality_local(this).GetCachedSize(), target, stream);
  }

  // optional .CMsgSteamDatagramConnectionQuality e2e_quality_remote = 31;
  if (cached_has_bits & 0x00000400u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(31, _Internal::e2e_quality_remote(this),
        _Internal::e2e_quality_remote(this).GetCachedSize(), target, stream);
  }

  // optional uint64 e2e_quality_remote_instantaneous_time = 32;
  if (cached_has_bits & 0x00800000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(32, this->_internal_e2e_quality_remote_instantaneous_time(), target);
  }

  // optional uint64 e2e_quality_remote_lifetime_time = 33;
  if (cached_has_bits & 0x01000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(33, this->_internal_e2e_quality_remote_lifetime_time(), target);
  }

  // optional .CMsgSteamDatagramConnectionQuality front_quality_local = 40;
  if (cached_has_bits & 0x00000800u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(40, _Internal::front_quality_local(this),
        _Internal::front_quality_local(this).GetCachedSize(), target, stream);
  }

  // optional .CMsgSteamDatagramConnectionQuality front_quality_remote = 41;
  if (cached_has_bits & 0x00001000u) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(41, _Internal::front_quality_remote(this),
        _Internal::front_quality_remote(this).GetCachedSize(), target, stream);
  }

  // optional uint64 front_quality_remote_instantaneous_time = 42;
  if (cached_has_bits & 0x02000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(42, this->_internal_front_quality_remote_instantaneous_time(), target);
  }

  // optional uint64 front_quality_remote_lifetime_time = 43;
  if (cached_has_bits & 0x04000000u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(43, this->_internal_front_quality_remote_lifetime_time(), target);
  }

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

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

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

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional string connection_key = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_connection_key());
    }

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

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

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

    // optional string status_loc_token = 16;
    if (cached_has_bits & 0x00000010u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_status_loc_token());
    }

    // optional string sdrpopid_local = 21;
    if (cached_has_bits & 0x00000020u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_sdrpopid_local());
    }

    // optional string sdrpopid_remote = 22;
    if (cached_has_bits & 0x00000040u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_sdrpopid_remote());
    }

    // optional string address_remote = 23;
    if (cached_has_bits & 0x00000080u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_address_remote());
    }

  }
  if (cached_has_bits & 0x0000ff00u) {
    // optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing = 24;
    if (cached_has_bits & 0x00000100u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.p2p_routing_);
    }

    // optional .CMsgSteamDatagramConnectionQuality e2e_quality_local = 30;
    if (cached_has_bits & 0x00000200u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.e2e_quality_local_);
    }

    // optional .CMsgSteamDatagramConnectionQuality e2e_quality_remote = 31;
    if (cached_has_bits & 0x00000400u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.e2e_quality_remote_);
    }

    // optional .CMsgSteamDatagramConnectionQuality front_quality_local = 40;
    if (cached_has_bits & 0x00000800u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.front_quality_local_);
    }

    // optional .CMsgSteamDatagramConnectionQuality front_quality_remote = 41;
    if (cached_has_bits & 0x00001000u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.front_quality_remote_);
    }

    // optional uint32 appid = 2;
    if (cached_has_bits & 0x00002000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_appid());
    }

    // optional fixed32 connection_id_local = 3;
    if (cached_has_bits & 0x00004000u) {
      total_size += 1 + 4;
    }

    // optional uint32 connection_state = 10;
    if (cached_has_bits & 0x00008000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_connection_state());
    }

  }
  if (cached_has_bits & 0x00ff0000u) {
    // optional uint32 start_time = 12;
    if (cached_has_bits & 0x00010000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_start_time());
    }

    // optional uint32 close_time = 13;
    if (cached_has_bits & 0x00020000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_close_time());
    }

    // optional uint32 close_reason = 14;
    if (cached_has_bits & 0x00040000u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_close_reason());
    }

    // optional uint32 transport_kind = 20;
    if (cached_has_bits & 0x00080000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_transport_kind());
    }

    // optional uint32 ping_interior = 25;
    if (cached_has_bits & 0x00100000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_ping_interior());
    }

    // optional uint32 ping_remote_front = 26;
    if (cached_has_bits & 0x00200000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_ping_remote_front());
    }

    // optional uint32 ping_default_internet_route = 27;
    if (cached_has_bits & 0x00400000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_ping_default_internet_route());
    }

    // optional uint64 e2e_quality_remote_instantaneous_time = 32;
    if (cached_has_bits & 0x00800000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt64Size(
          this->_internal_e2e_quality_remote_instantaneous_time());
    }

  }
  if (cached_has_bits & 0x07000000u) {
    // optional uint64 e2e_quality_remote_lifetime_time = 33;
    if (cached_has_bits & 0x01000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt64Size(
          this->_internal_e2e_quality_remote_lifetime_time());
    }

    // optional uint64 front_quality_remote_instantaneous_time = 42;
    if (cached_has_bits & 0x02000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt64Size(
          this->_internal_front_quality_remote_instantaneous_time());
    }

    // optional uint64 front_quality_remote_lifetime_time = 43;
    if (cached_has_bits & 0x04000000u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt64Size(
          this->_internal_front_quality_remote_lifetime_time());
    }

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

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


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

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_connection_key(from._internal_connection_key());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_identity_local(from._internal_identity_local());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_internal_set_identity_remote(from._internal_identity_remote());
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_internal_set_close_message(from._internal_close_message());
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_internal_set_status_loc_token(from._internal_status_loc_token());
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_internal_set_sdrpopid_local(from._internal_sdrpopid_local());
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_internal_set_sdrpopid_remote(from._internal_sdrpopid_remote());
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_internal_set_address_remote(from._internal_address_remote());
    }
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _this->_internal_mutable_p2p_routing()->::CMsgSteamDatagramP2PRoutingSummary::MergeFrom(
          from._internal_p2p_routing());
    }
    if (cached_has_bits & 0x00000200u) {
      _this->_internal_mutable_e2e_quality_local()->::CMsgSteamDatagramConnectionQuality::MergeFrom(
          from._internal_e2e_quality_local());
    }
    if (cached_has_bits & 0x00000400u) {
      _this->_internal_mutable_e2e_quality_remote()->::CMsgSteamDatagramConnectionQuality::MergeFrom(
          from._internal_e2e_quality_remote());
    }
    if (cached_has_bits & 0x00000800u) {
      _this->_internal_mutable_front_quality_local()->::CMsgSteamDatagramConnectionQuality::MergeFrom(
          from._internal_front_quality_local());
    }
    if (cached_has_bits & 0x00001000u) {
      _this->_internal_mutable_front_quality_remote()->::CMsgSteamDatagramConnectionQuality::MergeFrom(
          from._internal_front_quality_remote());
    }
    if (cached_has_bits & 0x00002000u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00004000u) {
      _this->_impl_.connection_id_local_ = from._impl_.connection_id_local_;
    }
    if (cached_has_bits & 0x00008000u) {
      _this->_impl_.connection_state_ = from._impl_.connection_state_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x00ff0000u) {
    if (cached_has_bits & 0x00010000u) {
      _this->_impl_.start_time_ = from._impl_.start_time_;
    }
    if (cached_has_bits & 0x00020000u) {
      _this->_impl_.close_time_ = from._impl_.close_time_;
    }
    if (cached_has_bits & 0x00040000u) {
      _this->_impl_.close_reason_ = from._impl_.close_reason_;
    }
    if (cached_has_bits & 0x00080000u) {
      _this->_impl_.transport_kind_ = from._impl_.transport_kind_;
    }
    if (cached_has_bits & 0x00100000u) {
      _this->_impl_.ping_interior_ = from._impl_.ping_interior_;
    }
    if (cached_has_bits & 0x00200000u) {
      _this->_impl_.ping_remote_front_ = from._impl_.ping_remote_front_;
    }
    if (cached_has_bits & 0x00400000u) {
      _this->_impl_.ping_default_internet_route_ = from._impl_.ping_default_internet_route_;
    }
    if (cached_has_bits & 0x00800000u) {
      _this->_impl_.e2e_quality_remote_instantaneous_time_ = from._impl_.e2e_quality_remote_instantaneous_time_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x07000000u) {
    if (cached_has_bits & 0x01000000u) {
      _this->_impl_.e2e_quality_remote_lifetime_time_ = from._impl_.e2e_quality_remote_lifetime_time_;
    }
    if (cached_has_bits & 0x02000000u) {
      _this->_impl_.front_quality_remote_instantaneous_time_ = from._impl_.front_quality_remote_instantaneous_time_;
    }
    if (cached_has_bits & 0x04000000u) {
      _this->_impl_.front_quality_remote_lifetime_time_ = from._impl_.front_quality_remote_lifetime_time_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CGameNetworkingUI_ConnectionState::InternalSwap(CGameNetworkingUI_ConnectionState* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.connection_key_, lhs_arena,
      &other->_impl_.connection_key_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.identity_local_, lhs_arena,
      &other->_impl_.identity_local_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.identity_remote_, lhs_arena,
      &other->_impl_.identity_remote_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.close_message_, lhs_arena,
      &other->_impl_.close_message_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.status_loc_token_, lhs_arena,
      &other->_impl_.status_loc_token_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.sdrpopid_local_, lhs_arena,
      &other->_impl_.sdrpopid_local_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.sdrpopid_remote_, lhs_arena,
      &other->_impl_.sdrpopid_remote_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.address_remote_, lhs_arena,
      &other->_impl_.address_remote_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CGameNetworkingUI_ConnectionState, _impl_.front_quality_remote_lifetime_time_)
      + sizeof(CGameNetworkingUI_ConnectionState::_impl_.front_quality_remote_lifetime_time_)
      - PROTOBUF_FIELD_OFFSET(CGameNetworkingUI_ConnectionState, _impl_.p2p_routing_)>(
          reinterpret_cast<char*>(&_impl_.p2p_routing_),
          reinterpret_cast<char*>(&other->_impl_.p2p_routing_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CGameNetworkingUI_ConnectionState::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter, &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once,
      file_level_metadata_steammessages_5fgamenetworkingui_2eproto[1]);
}

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

class CGameNetworkingUI_Message::_Internal {
 public:
};

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

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:CGameNetworkingUI_Message)
}

inline void CGameNetworkingUI_Message::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.connection_state_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

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

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

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

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

  _impl_.connection_state_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CGameNetworkingUI_Message::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated .CGameNetworkingUI_ConnectionState connection_state = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_connection_state(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

  // repeated .CGameNetworkingUI_ConnectionState connection_state = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_connection_state_size()); i < n; i++) {
    const auto& repfield = this->_internal_connection_state(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream);
  }

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

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

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

  // repeated .CGameNetworkingUI_ConnectionState connection_state = 1;
  total_size += 1UL * this->_internal_connection_state_size();
  for (const auto& msg : this->_impl_.connection_state_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

  _this->_impl_.connection_state_.MergeFrom(from._impl_.connection_state_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void CGameNetworkingUI_Message::InternalSwap(CGameNetworkingUI_Message* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.connection_state_.InternalSwap(&other->_impl_.connection_state_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CGameNetworkingUI_Message::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter, &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once,
      file_level_metadata_steammessages_5fgamenetworkingui_2eproto[2]);
}

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

class CGameNetworkingUI_ConnectionSummary::_Internal {
 public:
  using HasBits = decltype(std::declval<CGameNetworkingUI_ConnectionSummary>()._impl_._has_bits_);
  static void set_has_transport_kind(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_connection_state(HasBits* has_bits) {
    (*has_bits)[0] |= 128u;
  }
  static void set_has_sdrpop_local(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_sdrpop_remote(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_ping_ms(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_packet_loss(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static void set_has_ping_default_internet_route(HasBits* has_bits) {
    (*has_bits)[0] |= 32u;
  }
  static void set_has_ip_was_shared(HasBits* has_bits) {
    (*has_bits)[0] |= 64u;
  }
};

CGameNetworkingUI_ConnectionSummary::CGameNetworkingUI_ConnectionSummary(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CGameNetworkingUI_ConnectionSummary)
}
CGameNetworkingUI_ConnectionSummary::CGameNetworkingUI_ConnectionSummary(const CGameNetworkingUI_ConnectionSummary& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CGameNetworkingUI_ConnectionSummary* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.sdrpop_local_){}
    , decltype(_impl_.sdrpop_remote_){}
    , decltype(_impl_.transport_kind_){}
    , decltype(_impl_.ping_ms_){}
    , decltype(_impl_.packet_loss_){}
    , decltype(_impl_.ping_default_internet_route_){}
    , decltype(_impl_.ip_was_shared_){}
    , decltype(_impl_.connection_state_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.sdrpop_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpop_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_sdrpop_local()) {
    _this->_impl_.sdrpop_local_.Set(from._internal_sdrpop_local(), 
      _this->GetArenaForAllocation());
  }
  _impl_.sdrpop_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpop_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (from._internal_has_sdrpop_remote()) {
    _this->_impl_.sdrpop_remote_.Set(from._internal_sdrpop_remote(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.transport_kind_, &from._impl_.transport_kind_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.connection_state_) -
    reinterpret_cast<char*>(&_impl_.transport_kind_)) + sizeof(_impl_.connection_state_));
  // @@protoc_insertion_point(copy_constructor:CGameNetworkingUI_ConnectionSummary)
}

inline void CGameNetworkingUI_ConnectionSummary::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.sdrpop_local_){}
    , decltype(_impl_.sdrpop_remote_){}
    , decltype(_impl_.transport_kind_){0u}
    , decltype(_impl_.ping_ms_){0u}
    , decltype(_impl_.packet_loss_){0}
    , decltype(_impl_.ping_default_internet_route_){0u}
    , decltype(_impl_.ip_was_shared_){false}
    , decltype(_impl_.connection_state_){0u}
  };
  _impl_.sdrpop_local_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpop_local_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.sdrpop_remote_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sdrpop_remote_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

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

inline void CGameNetworkingUI_ConnectionSummary::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.sdrpop_local_.Destroy();
  _impl_.sdrpop_remote_.Destroy();
}

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

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

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      _impl_.sdrpop_local_.ClearNonDefaultToEmpty();
    }
    if (cached_has_bits & 0x00000002u) {
      _impl_.sdrpop_remote_.ClearNonDefaultToEmpty();
    }
  }
  if (cached_has_bits & 0x000000fcu) {
    ::memset(&_impl_.transport_kind_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&_impl_.connection_state_) -
        reinterpret_cast<char*>(&_impl_.transport_kind_)) + sizeof(_impl_.connection_state_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CGameNetworkingUI_ConnectionSummary::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 transport_kind = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_transport_kind(&has_bits);
          _impl_.transport_kind_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional string sdrpop_local = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_sdrpop_local();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionSummary.sdrpop_local");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional string sdrpop_remote = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_sdrpop_remote();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          #ifndef NDEBUG
          ::_pbi::VerifyUTF8(str, "CGameNetworkingUI_ConnectionSummary.sdrpop_remote");
          #endif  // !NDEBUG
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ping_ms = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _Internal::set_has_ping_ms(&has_bits);
          _impl_.ping_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional float packet_loss = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_packet_loss(&has_bits);
          _impl_.packet_loss_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 ping_default_internet_route = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _Internal::set_has_ping_default_internet_route(&has_bits);
          _impl_.ping_default_internet_route_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool ip_was_shared = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 56)) {
          _Internal::set_has_ip_was_shared(&has_bits);
          _impl_.ip_was_shared_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 connection_state = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _Internal::set_has_connection_state(&has_bits);
          _impl_.connection_state_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

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

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

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

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

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

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

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

  // optional uint32 connection_state = 8;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(8, this->_internal_connection_state(), target);
  }

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

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

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

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    // optional string sdrpop_local = 2;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
          this->_internal_sdrpop_local());
    }

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

    // optional uint32 transport_kind = 1;
    if (cached_has_bits & 0x00000004u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_transport_kind());
    }

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

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

    // optional uint32 ping_default_internet_route = 6;
    if (cached_has_bits & 0x00000020u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_ping_default_internet_route());
    }

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

    // optional uint32 connection_state = 8;
    if (cached_has_bits & 0x00000080u) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_connection_state());
    }

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

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


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

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_set_sdrpop_local(from._internal_sdrpop_local());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_internal_set_sdrpop_remote(from._internal_sdrpop_remote());
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.transport_kind_ = from._impl_.transport_kind_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ping_ms_ = from._impl_.ping_ms_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.packet_loss_ = from._impl_.packet_loss_;
    }
    if (cached_has_bits & 0x00000020u) {
      _this->_impl_.ping_default_internet_route_ = from._impl_.ping_default_internet_route_;
    }
    if (cached_has_bits & 0x00000040u) {
      _this->_impl_.ip_was_shared_ = from._impl_.ip_was_shared_;
    }
    if (cached_has_bits & 0x00000080u) {
      _this->_impl_.connection_state_ = from._impl_.connection_state_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CGameNetworkingUI_ConnectionSummary::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter, &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once,
      file_level_metadata_steammessages_5fgamenetworkingui_2eproto[3]);
}

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

class CGameNetworkingUI_AppSummary::_Internal {
 public:
  using HasBits = decltype(std::declval<CGameNetworkingUI_AppSummary>()._impl_._has_bits_);
  static void set_has_appid(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_ip_was_shared_with_friend(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_ip_was_shared_with_nonfriend(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_active_connections(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
  static const ::CGameNetworkingUI_ConnectionSummary& main_cxn(const CGameNetworkingUI_AppSummary* msg);
  static void set_has_main_cxn(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
};

const ::CGameNetworkingUI_ConnectionSummary&
CGameNetworkingUI_AppSummary::_Internal::main_cxn(const CGameNetworkingUI_AppSummary* msg) {
  return *msg->_impl_.main_cxn_;
}
CGameNetworkingUI_AppSummary::CGameNetworkingUI_AppSummary(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:CGameNetworkingUI_AppSummary)
}
CGameNetworkingUI_AppSummary::CGameNetworkingUI_AppSummary(const CGameNetworkingUI_AppSummary& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CGameNetworkingUI_AppSummary* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){from._impl_._has_bits_}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.main_cxn_){nullptr}
    , decltype(_impl_.appid_){}
    , decltype(_impl_.ip_was_shared_with_friend_){}
    , decltype(_impl_.ip_was_shared_with_nonfriend_){}
    , decltype(_impl_.active_connections_){}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_main_cxn()) {
    _this->_impl_.main_cxn_ = new ::CGameNetworkingUI_ConnectionSummary(*from._impl_.main_cxn_);
  }
  ::memcpy(&_impl_.appid_, &from._impl_.appid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.active_connections_) -
    reinterpret_cast<char*>(&_impl_.appid_)) + sizeof(_impl_.active_connections_));
  // @@protoc_insertion_point(copy_constructor:CGameNetworkingUI_AppSummary)
}

inline void CGameNetworkingUI_AppSummary::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_._has_bits_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , decltype(_impl_.main_cxn_){nullptr}
    , decltype(_impl_.appid_){0u}
    , decltype(_impl_.ip_was_shared_with_friend_){false}
    , decltype(_impl_.ip_was_shared_with_nonfriend_){false}
    , decltype(_impl_.active_connections_){0u}
  };
}

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

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

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

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

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

const char* CGameNetworkingUI_AppSummary::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional uint32 appid = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _Internal::set_has_appid(&has_bits);
          _impl_.appid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool ip_was_shared_with_friend = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) {
          _Internal::set_has_ip_was_shared_with_friend(&has_bits);
          _impl_.ip_was_shared_with_friend_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional bool ip_was_shared_with_nonfriend = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 88)) {
          _Internal::set_has_ip_was_shared_with_nonfriend(&has_bits);
          _impl_.ip_was_shared_with_nonfriend_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional uint32 active_connections = 20;
      case 20:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 160)) {
          _Internal::set_has_active_connections(&has_bits);
          _impl_.active_connections_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // optional .CGameNetworkingUI_ConnectionSummary main_cxn = 30;
      case 30:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 242)) {
          ptr = ctx->ParseMessage(_internal_mutable_main_cxn(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _impl_._has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

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

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

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

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

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

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

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

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

  cached_has_bits = _impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional .CGameNetworkingUI_ConnectionSummary main_cxn = 30;
    if (cached_has_bits & 0x00000001u) {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.main_cxn_);
    }

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

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

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

    // optional uint32 active_connections = 20;
    if (cached_has_bits & 0x00000010u) {
      total_size += 2 +
        ::_pbi::WireFormatLite::UInt32Size(
          this->_internal_active_connections());
    }

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

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


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

  cached_has_bits = from._impl_._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _this->_internal_mutable_main_cxn()->::CGameNetworkingUI_ConnectionSummary::MergeFrom(
          from._internal_main_cxn());
    }
    if (cached_has_bits & 0x00000002u) {
      _this->_impl_.appid_ = from._impl_.appid_;
    }
    if (cached_has_bits & 0x00000004u) {
      _this->_impl_.ip_was_shared_with_friend_ = from._impl_.ip_was_shared_with_friend_;
    }
    if (cached_has_bits & 0x00000008u) {
      _this->_impl_.ip_was_shared_with_nonfriend_ = from._impl_.ip_was_shared_with_nonfriend_;
    }
    if (cached_has_bits & 0x00000010u) {
      _this->_impl_.active_connections_ = from._impl_.active_connections_;
    }
    _this->_impl_._has_bits_[0] |= cached_has_bits;
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

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

::PROTOBUF_NAMESPACE_ID::Metadata CGameNetworkingUI_AppSummary::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_steammessages_5fgamenetworkingui_2eproto_getter, &descriptor_table_steammessages_5fgamenetworkingui_2eproto_once,
      file_level_metadata_steammessages_5fgamenetworkingui_2eproto[4]);
}

// @@protoc_insertion_point(namespace_scope)
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::CGameNetworkingUI_GlobalState*
Arena::CreateMaybeMessage< ::CGameNetworkingUI_GlobalState >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CGameNetworkingUI_GlobalState >(arena);
}
template<> PROTOBUF_NOINLINE ::CGameNetworkingUI_ConnectionState*
Arena::CreateMaybeMessage< ::CGameNetworkingUI_ConnectionState >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CGameNetworkingUI_ConnectionState >(arena);
}
template<> PROTOBUF_NOINLINE ::CGameNetworkingUI_Message*
Arena::CreateMaybeMessage< ::CGameNetworkingUI_Message >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CGameNetworkingUI_Message >(arena);
}
template<> PROTOBUF_NOINLINE ::CGameNetworkingUI_ConnectionSummary*
Arena::CreateMaybeMessage< ::CGameNetworkingUI_ConnectionSummary >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CGameNetworkingUI_ConnectionSummary >(arena);
}
template<> PROTOBUF_NOINLINE ::CGameNetworkingUI_AppSummary*
Arena::CreateMaybeMessage< ::CGameNetworkingUI_AppSummary >(Arena* arena) {
  return Arena::CreateMessageInternal< ::CGameNetworkingUI_AppSummary >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

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