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

#include "mcs.pb.h"

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

// Must be included last.
#include "google/protobuf/port_def.inc"
PROTOBUF_PRAGMA_INIT_SEG
namespace _pb = ::google::protobuf;
namespace _pbi = ::google::protobuf::internal;
namespace _fl = ::google::protobuf::internal::field_layout;
namespace mcs_proto {
class StreamErrorStanza::_Internal {
 public:
  using HasBits = decltype(::std::declval<StreamErrorStanza>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(StreamErrorStanza, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000001) ^ 0x00000001) != 0;
  }
};

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


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

template <typename>
constexpr StreamErrorStanza::StreamErrorStanza(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL StreamErrorStanza::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) StreamErrorStanza(arena);
}
constexpr auto StreamErrorStanza::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(StreamErrorStanza), alignof(StreamErrorStanza));
}
constexpr auto StreamErrorStanza::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          StreamErrorStanza::IsInitializedImpl,
          &StreamErrorStanza::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<StreamErrorStanza>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &StreamErrorStanza::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<StreamErrorStanza>(), &StreamErrorStanza::ByteSizeLong,
              &StreamErrorStanza::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(StreamErrorStanza, _impl_._cached_size_),
          true,
      },
      "mcs_proto.StreamErrorStanza",
  };
}
struct StreamErrorStanzaGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr StreamErrorStanzaGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 StreamErrorStanza_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(StreamErrorStanza::InternalGenerateClassData_(
            _default, &StreamErrorStanza_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<StreamErrorStanza>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~StreamErrorStanzaGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) StreamErrorStanza _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<StreamErrorStanza>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(StreamErrorStanzaGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST StreamErrorStanzaGlobalsTypeInternal StreamErrorStanza_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* StreamErrorStanza_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return StreamErrorStanza_globals_.GetClassData();
#else
  return StreamErrorStanza_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class StreamAck::_Internal {
 public:
};

constexpr StreamAck::ParseTableT_ StreamAck::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(StreamAck,
                            _impl_._cached_size_),  // no hasbits
      0, // no _extensions_
      0, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967295,  // skipmap
      offsetof(ParseTableT_, field_names),  // no field_entries
      0,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::StreamAck>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, // no field_entries, or aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr StreamAck::StreamAck(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL StreamAck::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) StreamAck(arena);
}
constexpr auto StreamAck::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(StreamAck), alignof(StreamAck));
}
constexpr auto StreamAck::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &StreamAck::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<StreamAck>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &StreamAck::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<StreamAck>(), &StreamAck::ByteSizeLong,
              &StreamAck::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(StreamAck, _impl_._cached_size_),
          true,
      },
      "mcs_proto.StreamAck",
  };
}
struct StreamAckGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr StreamAckGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 StreamAck_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(StreamAck::InternalGenerateClassData_(
            _default, &StreamAck_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<StreamAck>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~StreamAckGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) StreamAck _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<StreamAck>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(StreamAckGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST StreamAckGlobalsTypeInternal StreamAck_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* StreamAck_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return StreamAck_globals_.GetClassData();
#else
  return StreamAck_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Setting::_Internal {
 public:
  using HasBits = decltype(::std::declval<Setting>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(Setting, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000003) ^ 0x00000003) != 0;
  }
};

constexpr Setting::ParseTableT_ Setting::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Setting, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::Setting>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // required string value = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(Setting, _impl_.value_)}},
      // required string name = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(Setting, _impl_.name_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required string name = 1;
      {PROTOBUF_FIELD_OFFSET(Setting, _impl_.name_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string value = 2;
      {PROTOBUF_FIELD_OFFSET(Setting, _impl_.value_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr Setting::Setting(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Setting::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Setting(arena);
}
constexpr auto Setting::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(Setting), alignof(Setting));
}
constexpr auto Setting::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          Setting::IsInitializedImpl,
          &Setting::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Setting>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Setting::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Setting>(), &Setting::ByteSizeLong,
              &Setting::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Setting, _impl_._cached_size_),
          true,
      },
      "mcs_proto.Setting",
  };
}
struct SettingGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr SettingGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Setting_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Setting::InternalGenerateClassData_(
            _default, &Setting_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Setting>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~SettingGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Setting _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Setting>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(SettingGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr SelectiveAck::ParseTableT_ SelectiveAck::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SelectiveAck, _impl_._has_bits_),
      0, // no _extensions_
      1, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::SelectiveAck>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // repeated string id = 1;
      {::_pbi::TcParser::FastBR1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(SelectiveAck, _impl_.id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // repeated string id = 1;
      {PROTOBUF_FIELD_OFFSET(SelectiveAck, _impl_.id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kBytes | ::_fl::kRepSString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr SelectiveAck::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        id_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::SelectiveAck,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::SelectiveAck, _impl_.id_)>()
         }
     {}

template <typename>
constexpr SelectiveAck::SelectiveAck(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL SelectiveAck::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) SelectiveAck(arena);
}
constexpr auto SelectiveAck::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SelectiveAck), alignof(SelectiveAck));
}
constexpr auto SelectiveAck::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &SelectiveAck::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<SelectiveAck>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &SelectiveAck::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<SelectiveAck>(), &SelectiveAck::ByteSizeLong,
              &SelectiveAck::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(SelectiveAck, _impl_._cached_size_),
          true,
      },
      "mcs_proto.SelectiveAck",
  };
}
struct SelectiveAckGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr SelectiveAckGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 SelectiveAck_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(SelectiveAck::InternalGenerateClassData_(
            _default, &SelectiveAck_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<SelectiveAck>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~SelectiveAckGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) SelectiveAck _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<SelectiveAck>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(SelectiveAckGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST SelectiveAckGlobalsTypeInternal SelectiveAck_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* SelectiveAck_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return SelectiveAck_globals_.GetClassData();
#else
  return SelectiveAck_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class HeartbeatStat::_Internal {
 public:
  using HasBits = decltype(::std::declval<HeartbeatStat>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000007) ^ 0x00000007) != 0;
  }
};

constexpr HeartbeatStat::ParseTableT_ HeartbeatStat::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_._has_bits_),
      0, // no _extensions_
      3, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967288,  // skipmap
      offsetof(ParseTableT_, field_entries),
      3,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatStat>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // required string ip = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.ip_)}},
      // required bool timeout = 2;
      {::_pbi::TcParser::FastV8S1,
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.timeout_)}},
      // required int32 interval_ms = 3;
      {::_pbi::TcParser::FastV32S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.interval_ms_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required string ip = 1;
      {PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.ip_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required bool timeout = 2;
      {PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.timeout_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // required int32 interval_ms = 3;
      {PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_.interval_ms_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr HeartbeatStat::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        ip_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        timeout_{false},
        interval_ms_{0} {}

template <typename>
constexpr HeartbeatStat::HeartbeatStat(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL HeartbeatStat::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) HeartbeatStat(arena);
}
constexpr auto HeartbeatStat::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(HeartbeatStat), alignof(HeartbeatStat));
}
constexpr auto HeartbeatStat::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          HeartbeatStat::IsInitializedImpl,
          &HeartbeatStat::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<HeartbeatStat>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &HeartbeatStat::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<HeartbeatStat>(), &HeartbeatStat::ByteSizeLong,
              &HeartbeatStat::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(HeartbeatStat, _impl_._cached_size_),
          true,
      },
      "mcs_proto.HeartbeatStat",
  };
}
struct HeartbeatStatGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr HeartbeatStatGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 HeartbeatStat_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(HeartbeatStat::InternalGenerateClassData_(
            _default, &HeartbeatStat_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatStat>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~HeartbeatStatGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) HeartbeatStat _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatStat>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(HeartbeatStatGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr HeartbeatPing::ParseTableT_ HeartbeatPing::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_._has_bits_),
      0, // no _extensions_
      3, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967288,  // skipmap
      offsetof(ParseTableT_, field_entries),
      3,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatPing>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional int32 stream_id = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.stream_id_)}},
      // optional int32 last_stream_id_received = 2;
      {::_pbi::TcParser::FastV32S1,
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.last_stream_id_received_)}},
      // optional int64 status = 3;
      {::_pbi::TcParser::FastV64S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.status_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional int32 stream_id = 1;
      {PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.stream_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int32 last_stream_id_received = 2;
      {PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.last_stream_id_received_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 status = 3;
      {PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_.status_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr HeartbeatPing::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        stream_id_{0},
        last_stream_id_received_{0},
        status_{::int64_t{0}} {}

template <typename>
constexpr HeartbeatPing::HeartbeatPing(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL HeartbeatPing::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) HeartbeatPing(arena);
}
constexpr auto HeartbeatPing::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(HeartbeatPing), alignof(HeartbeatPing));
}
constexpr auto HeartbeatPing::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &HeartbeatPing::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<HeartbeatPing>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &HeartbeatPing::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<HeartbeatPing>(), &HeartbeatPing::ByteSizeLong,
              &HeartbeatPing::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(HeartbeatPing, _impl_._cached_size_),
          true,
      },
      "mcs_proto.HeartbeatPing",
  };
}
struct HeartbeatPingGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr HeartbeatPingGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 HeartbeatPing_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(HeartbeatPing::InternalGenerateClassData_(
            _default, &HeartbeatPing_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatPing>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~HeartbeatPingGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) HeartbeatPing _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatPing>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(HeartbeatPingGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr HeartbeatConfig::ParseTableT_ HeartbeatConfig::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_._has_bits_),
      0, // no _extensions_
      3, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967288,  // skipmap
      offsetof(ParseTableT_, field_entries),
      3,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatConfig>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional bool upload_stat = 1;
      {::_pbi::TcParser::FastV8S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.upload_stat_)}},
      // optional string ip = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.ip_)}},
      // optional int32 interval_ms = 3;
      {::_pbi::TcParser::FastV32S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.interval_ms_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional bool upload_stat = 1;
      {PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.upload_stat_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional string ip = 2;
      {PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.ip_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional int32 interval_ms = 3;
      {PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_.interval_ms_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr HeartbeatConfig::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        ip_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        upload_stat_{false},
        interval_ms_{0} {}

template <typename>
constexpr HeartbeatConfig::HeartbeatConfig(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL HeartbeatConfig::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) HeartbeatConfig(arena);
}
constexpr auto HeartbeatConfig::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(HeartbeatConfig), alignof(HeartbeatConfig));
}
constexpr auto HeartbeatConfig::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &HeartbeatConfig::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<HeartbeatConfig>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &HeartbeatConfig::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<HeartbeatConfig>(), &HeartbeatConfig::ByteSizeLong,
              &HeartbeatConfig::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(HeartbeatConfig, _impl_._cached_size_),
          true,
      },
      "mcs_proto.HeartbeatConfig",
  };
}
struct HeartbeatConfigGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr HeartbeatConfigGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 HeartbeatConfig_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(HeartbeatConfig::InternalGenerateClassData_(
            _default, &HeartbeatConfig_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatConfig>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~HeartbeatConfigGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) HeartbeatConfig _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatConfig>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(HeartbeatConfigGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr HeartbeatAck::ParseTableT_ HeartbeatAck::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_._has_bits_),
      0, // no _extensions_
      3, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967288,  // skipmap
      offsetof(ParseTableT_, field_entries),
      3,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatAck>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional int32 stream_id = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.stream_id_)}},
      // optional int32 last_stream_id_received = 2;
      {::_pbi::TcParser::FastV32S1,
       {16, 1, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.last_stream_id_received_)}},
      // optional int64 status = 3;
      {::_pbi::TcParser::FastV64S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.status_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional int32 stream_id = 1;
      {PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.stream_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int32 last_stream_id_received = 2;
      {PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.last_stream_id_received_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 status = 3;
      {PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_.status_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr HeartbeatAck::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        stream_id_{0},
        last_stream_id_received_{0},
        status_{::int64_t{0}} {}

template <typename>
constexpr HeartbeatAck::HeartbeatAck(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL HeartbeatAck::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) HeartbeatAck(arena);
}
constexpr auto HeartbeatAck::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(HeartbeatAck), alignof(HeartbeatAck));
}
constexpr auto HeartbeatAck::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &HeartbeatAck::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<HeartbeatAck>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &HeartbeatAck::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<HeartbeatAck>(), &HeartbeatAck::ByteSizeLong,
              &HeartbeatAck::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(HeartbeatAck, _impl_._cached_size_),
          true,
      },
      "mcs_proto.HeartbeatAck",
  };
}
struct HeartbeatAckGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr HeartbeatAckGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 HeartbeatAck_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(HeartbeatAck::InternalGenerateClassData_(
            _default, &HeartbeatAck_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatAck>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~HeartbeatAckGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) HeartbeatAck _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<HeartbeatAck>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(HeartbeatAckGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST HeartbeatAckGlobalsTypeInternal HeartbeatAck_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* HeartbeatAck_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return HeartbeatAck_globals_.GetClassData();
#else
  return HeartbeatAck_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Extension::_Internal {
 public:
  using HasBits = decltype(::std::declval<Extension>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(Extension, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000003) ^ 0x00000003) != 0;
  }
};

constexpr Extension::ParseTableT_ Extension::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Extension, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::Extension>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // required bytes data = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(Extension, _impl_.data_)}},
      // required int32 id = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(Extension, _impl_.id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required int32 id = 1;
      {PROTOBUF_FIELD_OFFSET(Extension, _impl_.id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // required bytes data = 2;
      {PROTOBUF_FIELD_OFFSET(Extension, _impl_.data_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr Extension::Extension(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Extension::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Extension(arena);
}
constexpr auto Extension::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(Extension), alignof(Extension));
}
constexpr auto Extension::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          Extension::IsInitializedImpl,
          &Extension::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Extension>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Extension::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Extension>(), &Extension::ByteSizeLong,
              &Extension::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Extension, _impl_._cached_size_),
          true,
      },
      "mcs_proto.Extension",
  };
}
struct ExtensionGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr ExtensionGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Extension_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Extension::InternalGenerateClassData_(
            _default, &Extension_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Extension>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~ExtensionGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Extension _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Extension>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(ExtensionGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST ExtensionGlobalsTypeInternal Extension_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Extension_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Extension_globals_.GetClassData();
#else
  return Extension_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Close::_Internal {
 public:
};

constexpr Close::ParseTableT_ Close::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Close,
                            _impl_._cached_size_),  // no hasbits
      0, // no _extensions_
      0, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967295,  // skipmap
      offsetof(ParseTableT_, field_names),  // no field_entries
      0,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::Close>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, // no field_entries, or aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr Close::Close(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Close::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Close(arena);
}
constexpr auto Close::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(Close), alignof(Close));
}
constexpr auto Close::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &Close::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Close>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Close::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Close>(), &Close::ByteSizeLong,
              &Close::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Close, _impl_._cached_size_),
          true,
      },
      "mcs_proto.Close",
  };
}
struct CloseGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr CloseGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Close_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Close::InternalGenerateClassData_(
            _default, &Close_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Close>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~CloseGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Close _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Close>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(CloseGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr ClientEvent::ParseTableT_ ClientEvent::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_._has_bits_),
      0, // no _extensions_
      300, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      7,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::ClientEvent>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional int32 network_type = 200;
      {::_pbi::TcParser::FastV32S2,
       {3264, 2, 0,
        PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.network_type_)}},
      // optional .mcs_proto.ClientEvent.Type type = 1;
      {::_pbi::TcParser::FastEr0S1,
       {8, 0, 3,
        PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.type_)}},
      // optional uint64 time_connection_started_ms = 202;
      {::_pbi::TcParser::FastV64S2,
       {3280, 4, 0,
        PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.time_connection_started_ms_)}},
      // optional uint64 time_connection_ended_ms = 203;
      {::_pbi::TcParser::FastV64S2,
       {3288, 5, 0,
        PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.time_connection_ended_ms_)}},
      // optional uint32 number_discarded_events = 100;
      {::_pbi::TcParser::FastV32S2,
       {1696, 1, 0,
        PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.number_discarded_events_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      100, 0, 1,
      65534, 1,
      200, 0, 1,
      65506, 2,
      300, 0, 1,
      65534, 6,
      65535, 65535
    }}, {{
      // optional .mcs_proto.ClientEvent.Type type = 1;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.type_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
      // optional uint32 number_discarded_events = 100;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.number_discarded_events_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional int32 network_type = 200;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.network_type_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional uint64 time_connection_started_ms = 202;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.time_connection_started_ms_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional uint64 time_connection_ended_ms = 203;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.time_connection_ended_ms_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional int32 error_code = 204;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.error_code_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional uint64 time_connection_established_ms = 300;
      {PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_.time_connection_established_ms_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
    }},
    {{
        {0, 3},
    }},
    {{
    }},
  };
}


inline constexpr ClientEvent::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        type_{static_cast< ::mcs_proto::ClientEvent_Type >(0)},
        number_discarded_events_{0u},
        network_type_{0},
        error_code_{0},
        time_connection_started_ms_{::uint64_t{0u}},
        time_connection_ended_ms_{::uint64_t{0u}},
        time_connection_established_ms_{::uint64_t{0u}} {}

template <typename>
constexpr ClientEvent::ClientEvent(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL ClientEvent::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) ClientEvent(arena);
}
constexpr auto ClientEvent::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(ClientEvent), alignof(ClientEvent));
}
constexpr auto ClientEvent::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &ClientEvent::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<ClientEvent>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &ClientEvent::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<ClientEvent>(), &ClientEvent::ByteSizeLong,
              &ClientEvent::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(ClientEvent, _impl_._cached_size_),
          true,
      },
      "mcs_proto.ClientEvent",
  };
}
struct ClientEventGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr ClientEventGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 ClientEvent_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(ClientEvent::InternalGenerateClassData_(
            _default, &ClientEvent_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<ClientEvent>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~ClientEventGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) ClientEvent _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<ClientEvent>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(ClientEventGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST ClientEventGlobalsTypeInternal ClientEvent_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* ClientEvent_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return ClientEvent_globals_.GetClassData();
#else
  return ClientEvent_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class AppData::_Internal {
 public:
  using HasBits = decltype(::std::declval<AppData>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(AppData, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000003) ^ 0x00000003) != 0;
  }
};

constexpr AppData::ParseTableT_ AppData::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(AppData, _impl_._has_bits_),
      0, // no _extensions_
      2, 8,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::AppData>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // required string value = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(AppData, _impl_.value_)}},
      // required string key = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(AppData, _impl_.key_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required string key = 1;
      {PROTOBUF_FIELD_OFFSET(AppData, _impl_.key_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string value = 2;
      {PROTOBUF_FIELD_OFFSET(AppData, _impl_.value_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr AppData::AppData(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL AppData::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) AppData(arena);
}
constexpr auto AppData::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(AppData), alignof(AppData));
}
constexpr auto AppData::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          AppData::IsInitializedImpl,
          &AppData::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<AppData>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &AppData::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<AppData>(), &AppData::ByteSizeLong,
              &AppData::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(AppData, _impl_._cached_size_),
          true,
      },
      "mcs_proto.AppData",
  };
}
struct AppDataGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr AppDataGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 AppData_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(AppData::InternalGenerateClassData_(
            _default, &AppData_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<AppData>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~AppDataGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) AppData _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<AppData>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(AppDataGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST AppDataGlobalsTypeInternal AppData_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* AppData_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return AppData_globals_.GetClassData();
#else
  return AppData_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class LoginRequest::_Internal {
 public:
  using HasBits = decltype(::std::declval<LoginRequest>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x000000f8) ^ 0x000000f8) != 0;
  }
};

constexpr LoginRequest::ParseTableT_ LoginRequest::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_._has_bits_),
      0, // no _extensions_
      22, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4292609280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      17,  // num_field_entries
      4,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::LoginRequest>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // required string id = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 3, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.id_)}},
      // required string domain = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 4, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.domain_)}},
      // required string user = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 5, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.user_)}},
      // required string resource = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 6, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.resource_)}},
      // required string auth_token = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 7, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.auth_token_)}},
      // optional string device_id = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 8, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.device_id_)}},
      // optional int64 last_rmq_id = 7;
      {::_pbi::TcParser::FastV64S1,
       {56, 10, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.last_rmq_id_)}},
      // repeated .mcs_proto.Setting setting = 8;
      {::_pbi::TcParser::FastMtR1,
       {66, 0, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.setting_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated string received_persistent_id = 10;
      {::_pbi::TcParser::FastBR1,
       {82, 1, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.received_persistent_id_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional bool adaptive_heartbeat = 12;
      {::_pbi::TcParser::FastV8S1,
       {96, 11, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.adaptive_heartbeat_)}},
      // optional .mcs_proto.HeartbeatStat heartbeat_stat = 13;
      {::_pbi::TcParser::FastMtS1,
       {106, 9, 1,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.heartbeat_stat_)}},
      // optional bool use_rmq2 = 14;
      {::_pbi::TcParser::FastV8S1,
       {112, 12, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.use_rmq2_)}},
      // optional int64 account_id = 15;
      {::_pbi::TcParser::FastV64S1,
       {120, 14, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.account_id_)}},
      // optional .mcs_proto.LoginRequest.AuthService auth_service = 16;
      {::_pbi::TcParser::FastErS2,
       {384, 16, 3,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.auth_service_)}},
      // optional int32 network_type = 17;
      {::_pbi::TcParser::FastV32S2,
       {392, 13, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.network_type_)}},
      // optional int64 status = 18;
      {::_pbi::TcParser::FastV64S2,
       {400, 15, 0,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.status_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // repeated .mcs_proto.ClientEvent client_event = 22;
      {::_pbi::TcParser::FastMtR2,
       {434, 2, 2,
        PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.client_event_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // required string id = 1;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.id_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string domain = 2;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.domain_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string user = 3;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.user_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string resource = 4;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.resource_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string auth_token = 5;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.auth_token_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string device_id = 6;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.device_id_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional int64 last_rmq_id = 7;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.last_rmq_id_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // repeated .mcs_proto.Setting setting = 8;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.setting_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated string received_persistent_id = 10;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.received_persistent_id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kBytes | ::_fl::kRepSString)},
      // optional bool adaptive_heartbeat = 12;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.adaptive_heartbeat_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional .mcs_proto.HeartbeatStat heartbeat_stat = 13;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.heartbeat_stat_), _Internal::kHasBitsOffset + 9, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional bool use_rmq2 = 14;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.use_rmq2_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional int64 account_id = 15;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.account_id_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // optional .mcs_proto.LoginRequest.AuthService auth_service = 16;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.auth_service_), _Internal::kHasBitsOffset + 16, 3, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
      // optional int32 network_type = 17;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.network_type_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 status = 18;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.status_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // repeated .mcs_proto.ClientEvent client_event = 22;
      {PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.client_event_), _Internal::kHasBitsOffset + 2, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::Setting>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::Setting_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatStat>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::HeartbeatStat_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::ClientEvent>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::ClientEvent_globals_},
        #endif
        {2, 2},
    }},
    {{
    }},
  };
}


inline constexpr LoginRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        setting_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.setting_)>()
         }
        ,
        received_persistent_id_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.received_persistent_id_)>()
         }
        ,
        client_event_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.client_event_)>()
         }
        ,
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        domain_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        user_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        resource_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        auth_token_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        device_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        heartbeat_stat_{nullptr},
        last_rmq_id_{::int64_t{0}},
        adaptive_heartbeat_{false},
        use_rmq2_{false},
        network_type_{0},
        account_id_{::int64_t{0}},
        status_{::int64_t{0}},
        auth_service_{static_cast< ::mcs_proto::LoginRequest_AuthService >(2)} {}

template <typename>
constexpr LoginRequest::LoginRequest(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL LoginRequest::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) LoginRequest(arena);
}
constexpr auto LoginRequest::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(LoginRequest), alignof(LoginRequest));
}
constexpr auto LoginRequest::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          LoginRequest::IsInitializedImpl,
          &LoginRequest::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<LoginRequest>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &LoginRequest::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<LoginRequest>(), &LoginRequest::ByteSizeLong,
              &LoginRequest::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_._cached_size_),
          true,
      },
      "mcs_proto.LoginRequest",
  };
}
struct LoginRequestGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr LoginRequestGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 LoginRequest_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(LoginRequest::InternalGenerateClassData_(
            _default, &LoginRequest_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<LoginRequest>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~LoginRequestGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) LoginRequest _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<LoginRequest>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(LoginRequestGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST LoginRequestGlobalsTypeInternal LoginRequest_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* LoginRequest_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return LoginRequest_globals_.GetClassData();
#else
  return LoginRequest_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class ErrorInfo::_Internal {
 public:
  using HasBits = decltype(::std::declval<ErrorInfo>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000008) ^ 0x00000008) != 0;
  }
};

constexpr ErrorInfo::ParseTableT_ ErrorInfo::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_._has_bits_),
      0, // no _extensions_
      4, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::ErrorInfo>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional .mcs_proto.Extension extension = 4;
      {::_pbi::TcParser::FastMtS1,
       {34, 2, 0,
        PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.extension_)}},
      // required int32 code = 1;
      {::_pbi::TcParser::FastV32S1,
       {8, 3, 0,
        PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.code_)}},
      // optional string message = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.message_)}},
      // optional string type = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 1, 0,
        PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.type_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required int32 code = 1;
      {PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.code_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional string message = 2;
      {PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.message_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string type = 3;
      {PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.type_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional .mcs_proto.Extension extension = 4;
      {PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_.extension_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::Extension>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::Extension_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr ErrorInfo::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        message_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        type_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        extension_{nullptr},
        code_{0} {}

template <typename>
constexpr ErrorInfo::ErrorInfo(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL ErrorInfo::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) ErrorInfo(arena);
}
constexpr auto ErrorInfo::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(ErrorInfo), alignof(ErrorInfo));
}
constexpr auto ErrorInfo::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          ErrorInfo::IsInitializedImpl,
          &ErrorInfo::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<ErrorInfo>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &ErrorInfo::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<ErrorInfo>(), &ErrorInfo::ByteSizeLong,
              &ErrorInfo::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(ErrorInfo, _impl_._cached_size_),
          true,
      },
      "mcs_proto.ErrorInfo",
  };
}
struct ErrorInfoGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr ErrorInfoGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 ErrorInfo_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(ErrorInfo::InternalGenerateClassData_(
            _default, &ErrorInfo_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<ErrorInfo>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~ErrorInfoGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) ErrorInfo _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<ErrorInfo>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(ErrorInfoGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST ErrorInfoGlobalsTypeInternal ErrorInfo_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* ErrorInfo_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return ErrorInfo_globals_.GetClassData();
#else
  return ErrorInfo_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class DataMessageStanza::_Internal {
 public:
  using HasBits = decltype(::std::declval<DataMessageStanza>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000014) ^ 0x00000014) != 0;
  }
};

constexpr DataMessageStanza::ParseTableT_ DataMessageStanza::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_._has_bits_),
      0, // no _extensions_
      24, 248,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4284508161,  // skipmap
      offsetof(ParseTableT_, field_entries),
      18,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::DataMessageStanza>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string id = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.id_)}},
      // required string from = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 2, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.from_)}},
      // optional string to = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 3, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.to_)}},
      // required string category = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 4, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.category_)}},
      // optional string token = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 5, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.token_)}},
      // repeated .mcs_proto.AppData app_data = 7;
      {::_pbi::TcParser::FastMtR1,
       {58, 0, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.app_data_)}},
      // optional bool from_trusted_server = 8;
      {::_pbi::TcParser::FastV8S1,
       {64, 12, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.from_trusted_server_)}},
      // optional string persistent_id = 9;
      {::_pbi::TcParser::FastBS1,
       {74, 6, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.persistent_id_)}},
      // optional int32 stream_id = 10;
      {::_pbi::TcParser::FastV32S1,
       {80, 9, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.stream_id_)}},
      // optional int32 last_stream_id_received = 11;
      {::_pbi::TcParser::FastV32S1,
       {88, 10, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.last_stream_id_received_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional string reg_id = 13;
      {::_pbi::TcParser::FastBS1,
       {106, 7, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.reg_id_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional int64 device_user_id = 16;
      {::_pbi::TcParser::FastV64S2,
       {384, 11, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.device_user_id_)}},
      // optional int32 ttl = 17;
      {::_pbi::TcParser::FastV32S2,
       {392, 14, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.ttl_)}},
      // optional int64 sent = 18;
      {::_pbi::TcParser::FastV64S2,
       {400, 15, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.sent_)}},
      // optional int32 queued = 19;
      {::_pbi::TcParser::FastV32S2,
       {408, 17, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.queued_)}},
      // optional int64 status = 20;
      {::_pbi::TcParser::FastV64S2,
       {416, 16, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.status_)}},
      // optional bytes raw_data = 21;
      {::_pbi::TcParser::FastBS2,
       {426, 8, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.raw_data_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional bool immediate_ack = 24;
      {::_pbi::TcParser::FastV8S2,
       {448, 13, 0,
        PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.immediate_ack_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional string id = 2;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string from = 3;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.from_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string to = 4;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.to_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // required string category = 5;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.category_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string token = 6;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.token_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // repeated .mcs_proto.AppData app_data = 7;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.app_data_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional bool from_trusted_server = 8;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.from_trusted_server_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional string persistent_id = 9;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.persistent_id_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional int32 stream_id = 10;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.stream_id_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int32 last_stream_id_received = 11;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.last_stream_id_received_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional string reg_id = 13;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.reg_id_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional int64 device_user_id = 16;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.device_user_id_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // optional int32 ttl = 17;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.ttl_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 sent = 18;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.sent_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // optional int32 queued = 19;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.queued_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 status = 20;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.status_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // optional bytes raw_data = 21;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.raw_data_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional bool immediate_ack = 24;
      {PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.immediate_ack_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::AppData>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::AppData_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr DataMessageStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        app_data_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::DataMessageStanza,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::DataMessageStanza, _impl_.app_data_)>()
         }
        ,
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        from_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        to_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        category_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        token_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        persistent_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        reg_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        raw_data_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        stream_id_{0},
        last_stream_id_received_{0},
        device_user_id_{::int64_t{0}},
        from_trusted_server_{false},
        immediate_ack_{false},
        ttl_{0},
        sent_{::int64_t{0}},
        status_{::int64_t{0}},
        queued_{0} {}

template <typename>
constexpr DataMessageStanza::DataMessageStanza(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL DataMessageStanza::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) DataMessageStanza(arena);
}
constexpr auto DataMessageStanza::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(DataMessageStanza), alignof(DataMessageStanza));
}
constexpr auto DataMessageStanza::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          DataMessageStanza::IsInitializedImpl,
          &DataMessageStanza::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<DataMessageStanza>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &DataMessageStanza::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<DataMessageStanza>(), &DataMessageStanza::ByteSizeLong,
              &DataMessageStanza::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_._cached_size_),
          true,
      },
      "mcs_proto.DataMessageStanza",
  };
}
struct DataMessageStanzaGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr DataMessageStanzaGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 DataMessageStanza_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(DataMessageStanza::InternalGenerateClassData_(
            _default, &DataMessageStanza_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<DataMessageStanza>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~DataMessageStanzaGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) DataMessageStanza _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<DataMessageStanza>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(DataMessageStanzaGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST DataMessageStanzaGlobalsTypeInternal DataMessageStanza_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* DataMessageStanza_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return DataMessageStanza_globals_.GetClassData();
#else
  return DataMessageStanza_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class LoginResponse::_Internal {
 public:
  using HasBits = decltype(::std::declval<LoginResponse>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000002) ^ 0x00000002) != 0;
  }
};

constexpr LoginResponse::ParseTableT_ LoginResponse::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_._has_bits_),
      0, // no _extensions_
      8, 56,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967040,  // skipmap
      offsetof(ParseTableT_, field_entries),
      8,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::LoginResponse>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional int64 server_timestamp = 8;
      {::_pbi::TcParser::FastV64S1,
       {64, 7, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.server_timestamp_)}},
      // required string id = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 1, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.id_)}},
      // optional string jid = 2;
      {::_pbi::TcParser::FastBS1,
       {18, 2, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.jid_)}},
      // optional .mcs_proto.ErrorInfo error = 3;
      {::_pbi::TcParser::FastMtS1,
       {26, 3, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.error_)}},
      // repeated .mcs_proto.Setting setting = 4;
      {::_pbi::TcParser::FastMtR1,
       {34, 0, 1,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.setting_)}},
      // optional int32 stream_id = 5;
      {::_pbi::TcParser::FastV32S1,
       {40, 5, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.stream_id_)}},
      // optional int32 last_stream_id_received = 6;
      {::_pbi::TcParser::FastV32S1,
       {48, 6, 0,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.last_stream_id_received_)}},
      // optional .mcs_proto.HeartbeatConfig heartbeat_config = 7;
      {::_pbi::TcParser::FastMtS1,
       {58, 4, 2,
        PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.heartbeat_config_)}},
    }}, {{
      65535, 65535
    }}, {{
      // required string id = 1;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string jid = 2;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.jid_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional .mcs_proto.ErrorInfo error = 3;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.error_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // repeated .mcs_proto.Setting setting = 4;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.setting_), _Internal::kHasBitsOffset + 0, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional int32 stream_id = 5;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.stream_id_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int32 last_stream_id_received = 6;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.last_stream_id_received_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional .mcs_proto.HeartbeatConfig heartbeat_config = 7;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.heartbeat_config_), _Internal::kHasBitsOffset + 4, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional int64 server_timestamp = 8;
      {PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_.server_timestamp_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::ErrorInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::ErrorInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::Setting>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::Setting_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::HeartbeatConfig>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::HeartbeatConfig_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr LoginResponse::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        setting_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginResponse,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginResponse, _impl_.setting_)>()
         }
        ,
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        jid_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        error_{nullptr},
        heartbeat_config_{nullptr},
        stream_id_{0},
        last_stream_id_received_{0},
        server_timestamp_{::int64_t{0}} {}

template <typename>
constexpr LoginResponse::LoginResponse(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL LoginResponse::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) LoginResponse(arena);
}
constexpr auto LoginResponse::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(LoginResponse), alignof(LoginResponse));
}
constexpr auto LoginResponse::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          LoginResponse::IsInitializedImpl,
          &LoginResponse::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<LoginResponse>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &LoginResponse::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<LoginResponse>(), &LoginResponse::ByteSizeLong,
              &LoginResponse::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(LoginResponse, _impl_._cached_size_),
          true,
      },
      "mcs_proto.LoginResponse",
  };
}
struct LoginResponseGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr LoginResponseGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 LoginResponse_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(LoginResponse::InternalGenerateClassData_(
            _default, &LoginResponse_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<LoginResponse>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~LoginResponseGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) LoginResponse _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<LoginResponse>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(LoginResponseGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST LoginResponseGlobalsTypeInternal LoginResponse_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* LoginResponse_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return LoginResponse_globals_.GetClassData();
#else
  return LoginResponse_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class IqStanza::_Internal {
 public:
  using HasBits = decltype(::std::declval<IqStanza>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(IqStanza, _impl_._has_bits_);
  static bool MissingRequiredFields(const HasBits& has_bits) {
    return ((has_bits[0] & 0x00000081) ^ 0x00000081) != 0;
  }
};

constexpr IqStanza::ParseTableT_ IqStanza::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(IqStanza, _impl_._has_bits_),
      0, // no _extensions_
      12, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294963200,  // skipmap
      offsetof(ParseTableT_, field_entries),
      12,  // num_field_entries
      3,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mcs_proto::IqStanza>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional int64 rmq_id = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 6, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.rmq_id_)}},
      // required .mcs_proto.IqStanza.IqType type = 2;
      {::_pbi::TcParser::FastEr0S1,
       {16, 7, 3,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.type_)}},
      // required string id = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 0, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.id_)}},
      // optional string from = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 1, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.from_)}},
      // optional string to = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 2, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.to_)}},
      // optional .mcs_proto.ErrorInfo error = 6;
      {::_pbi::TcParser::FastMtS1,
       {50, 4, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.error_)}},
      // optional .mcs_proto.Extension extension = 7;
      {::_pbi::TcParser::FastMtS1,
       {58, 5, 1,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.extension_)}},
      // optional string persistent_id = 8;
      {::_pbi::TcParser::FastBS1,
       {66, 3, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.persistent_id_)}},
      // optional int32 stream_id = 9;
      {::_pbi::TcParser::FastV32S1,
       {72, 8, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.stream_id_)}},
      // optional int32 last_stream_id_received = 10;
      {::_pbi::TcParser::FastV32S1,
       {80, 11, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.last_stream_id_received_)}},
      // optional int64 account_id = 11;
      {::_pbi::TcParser::FastV64S1,
       {88, 9, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.account_id_)}},
      // optional int64 status = 12;
      {::_pbi::TcParser::FastV64S1,
       {96, 10, 0,
        PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.status_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional int64 rmq_id = 1;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.rmq_id_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // required .mcs_proto.IqStanza.IqType type = 2;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.type_), _Internal::kHasBitsOffset + 7, 2, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
      // required string id = 3;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string from = 4;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.from_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional string to = 5;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.to_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional .mcs_proto.ErrorInfo error = 6;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.error_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .mcs_proto.Extension extension = 7;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.extension_), _Internal::kHasBitsOffset + 5, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional string persistent_id = 8;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.persistent_id_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // optional int32 stream_id = 9;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.stream_id_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int32 last_stream_id_received = 10;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.last_stream_id_received_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
      // optional int64 account_id = 11;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.account_id_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
      // optional int64 status = 12;
      {PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.status_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::ErrorInfo>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::ErrorInfo_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mcs_proto::Extension>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mcs_proto::Extension_globals_},
        #endif
        {0, 3},
    }},
    {{
    }},
  };
}


inline constexpr IqStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        from_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        to_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        persistent_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        error_{nullptr},
        extension_{nullptr},
        rmq_id_{::int64_t{0}},
        type_{static_cast< ::mcs_proto::IqStanza_IqType >(0)},
        stream_id_{0},
        account_id_{::int64_t{0}},
        status_{::int64_t{0}},
        last_stream_id_received_{0} {}

template <typename>
constexpr IqStanza::IqStanza(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL IqStanza::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) IqStanza(arena);
}
constexpr auto IqStanza::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(IqStanza), alignof(IqStanza));
}
constexpr auto IqStanza::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          IqStanza::IsInitializedImpl,
          &IqStanza::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<IqStanza>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &IqStanza::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<IqStanza>(), &IqStanza::ByteSizeLong,
              &IqStanza::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(IqStanza, _impl_._cached_size_),
          true,
      },
      "mcs_proto.IqStanza",
  };
}
struct IqStanzaGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr IqStanzaGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 IqStanza_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(IqStanza::InternalGenerateClassData_(
            _default, &IqStanza_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<IqStanza>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~IqStanzaGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) IqStanza _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<IqStanza>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(IqStanzaGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT GCM_EXPORT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST IqStanzaGlobalsTypeInternal IqStanza_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* IqStanza_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return IqStanza_globals_.GetClassData();
#else
  return IqStanza_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
}  // namespace mcs_proto
namespace mcs_proto {
PROTOBUF_CONSTINIT const uint32_t ClientEvent_Type_internal_data_[] = {
    262144u, 0u, };
static const char ClientEvent_Type_names[] = {
    "DISCARDED_EVENTS"
    "FAILED_CONNECTION"
    "SUCCESSFUL_CONNECTION"
    "UNKNOWN"
};

static const ::google::protobuf::internal::EnumEntry ClientEvent_Type_entries[] = {
    {{&ClientEvent_Type_names[0], 16}, 1},
    {{&ClientEvent_Type_names[16], 17}, 2},
    {{&ClientEvent_Type_names[33], 21}, 3},
    {{&ClientEvent_Type_names[54], 7}, 0},
};

static const int ClientEvent_Type_entries_by_number[] = {
    3,  // 0 -> UNKNOWN
    0,  // 1 -> DISCARDED_EVENTS
    1,  // 2 -> FAILED_CONNECTION
    2,  // 3 -> SUCCESSFUL_CONNECTION
};

bool ClientEvent_Type_Parse(::absl::string_view name,
                                  ClientEvent_Type* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      ClientEvent_Type_entries, 4, name, &int_value);
  if (success) {
    *value = static_cast<ClientEvent_Type>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    ClientEvent_Type_strings[4] = {};

const ::std::string& ClientEvent_Type_Name(ClientEvent_Type value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      ClientEvent_Type_entries, ClientEvent_Type_entries_by_number, 4,
      ClientEvent_Type_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(ClientEvent_Type_entries,
                                  ClientEvent_Type_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : ClientEvent_Type_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t LoginRequest_AuthService_internal_data_[] = {
    65538u, 0u, };
static const char LoginRequest_AuthService_names[] = {
    "ANDROID_ID"
};

static const ::google::protobuf::internal::EnumEntry LoginRequest_AuthService_entries[] = {
    {{&LoginRequest_AuthService_names[0], 10}, 2},
};

static const int LoginRequest_AuthService_entries_by_number[] = {
    0,  // 2 -> ANDROID_ID
};

bool LoginRequest_AuthService_Parse(::absl::string_view name,
                                  LoginRequest_AuthService* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      LoginRequest_AuthService_entries, 1, name, &int_value);
  if (success) {
    *value = static_cast<LoginRequest_AuthService>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    LoginRequest_AuthService_strings[1] = {};

const ::std::string& LoginRequest_AuthService_Name(LoginRequest_AuthService value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      LoginRequest_AuthService_entries, LoginRequest_AuthService_entries_by_number, 1,
      LoginRequest_AuthService_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(LoginRequest_AuthService_entries,
                                  LoginRequest_AuthService_entries_by_number,
                                  1, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : LoginRequest_AuthService_strings[idx].get();
}
PROTOBUF_CONSTINIT const uint32_t IqStanza_IqType_internal_data_[] = {
    262144u, 0u, };
static const char IqStanza_IqType_names[] = {
    "GET"
    "IQ_ERROR"
    "RESULT"
    "SET"
};

static const ::google::protobuf::internal::EnumEntry IqStanza_IqType_entries[] = {
    {{&IqStanza_IqType_names[0], 3}, 0},
    {{&IqStanza_IqType_names[3], 8}, 3},
    {{&IqStanza_IqType_names[11], 6}, 2},
    {{&IqStanza_IqType_names[17], 3}, 1},
};

static const int IqStanza_IqType_entries_by_number[] = {
    0,  // 0 -> GET
    3,  // 1 -> SET
    2,  // 2 -> RESULT
    1,  // 3 -> IQ_ERROR
};

bool IqStanza_IqType_Parse(::absl::string_view name,
                                  IqStanza_IqType* PROTOBUF_NONNULL value) {
  int int_value;
  bool success = ::google::protobuf::internal::LookUpEnumValue(
      IqStanza_IqType_entries, 4, name, &int_value);
  if (success) {
    *value = static_cast<IqStanza_IqType>(int_value);
  }
  return success;
}
static ::google::protobuf::internal::ExplicitlyConstructed<::std::string>
    IqStanza_IqType_strings[4] = {};

const ::std::string& IqStanza_IqType_Name(IqStanza_IqType value) {
  static const bool kDummy = ::google::protobuf::internal::InitializeEnumStrings(
      IqStanza_IqType_entries, IqStanza_IqType_entries_by_number, 4,
      IqStanza_IqType_strings);
  (void)kDummy;

  int idx = ::google::protobuf::internal::LookUpEnumName(IqStanza_IqType_entries,
                                  IqStanza_IqType_entries_by_number,
                                  4, value);
  return idx == -1 ? ::google::protobuf::internal::GetEmptyString() : IqStanza_IqType_strings[idx].get();
}
// ===================================================================

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite HeartbeatPing_class_data_ =
    HeartbeatPing::InternalGenerateClassData_(HeartbeatPing_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    ::memset(&_impl_.stream_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.status_) -
        reinterpret_cast<char*>(&_impl_.stream_id_)) + sizeof(_impl_.status_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional int32 stream_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
            stream, this_._internal_stream_id(), target);
  }

  // optional int32 last_stream_id_received = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
            stream, this_._internal_last_stream_id_received(), target);
  }

  // optional int64 status = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<3>(
            stream, this_._internal_status(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.HeartbeatPing)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    // optional int32 stream_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_stream_id());
    }
    // optional int32 last_stream_id_received = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_last_stream_id_received());
    }
    // optional int64 status = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_status());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.stream_id_ = from._impl_.stream_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.last_stream_id_received_ = from._impl_.last_stream_id_received_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite HeartbeatAck_class_data_ =
    HeartbeatAck::InternalGenerateClassData_(HeartbeatAck_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    ::memset(&_impl_.stream_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.status_) -
        reinterpret_cast<char*>(&_impl_.stream_id_)) + sizeof(_impl_.status_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional int32 stream_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
            stream, this_._internal_stream_id(), target);
  }

  // optional int32 last_stream_id_received = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
            stream, this_._internal_last_stream_id_received(), target);
  }

  // optional int64 status = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<3>(
            stream, this_._internal_status(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.HeartbeatAck)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    // optional int32 stream_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_stream_id());
    }
    // optional int32 last_stream_id_received = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_last_stream_id_received());
    }
    // optional int64 status = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_status());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.stream_id_ = from._impl_.stream_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.last_stream_id_received_ = from._impl_.last_stream_id_received_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

ErrorInfo::ErrorInfo(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const ErrorInfo& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, ErrorInfo_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ErrorInfo* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.extension_ = (CheckHasBit(cached_has_bits, 0x00000004U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.extension_)
                : nullptr;
  _impl_.code_ = from._impl_.code_;

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

inline void ErrorInfo::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, extension_),
           0,
           offsetof(Impl_, code_) -
               offsetof(Impl_, extension_) +
               sizeof(Impl_::code_));
}
ErrorInfo::~ErrorInfo() {
  // @@protoc_insertion_point(destructor:mcs_proto.ErrorInfo)
  SharedDtor(*this);
}
inline void ErrorInfo::SharedDtor(MessageLite& self) {
  ErrorInfo& this_ = static_cast<ErrorInfo&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.message_.Destroy();
  this_._impl_.type_.Destroy();
  delete this_._impl_.extension_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ErrorInfo_class_data_ =
    ErrorInfo::InternalGenerateClassData_(ErrorInfo_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.message_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(_impl_.extension_ != nullptr);
      _impl_.extension_->Clear();
    }
  }
  _impl_.code_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // required int32 code = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
            stream, this_._internal_code(), target);
  }

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

  // optional string type = 3;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_type();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

  // optional .mcs_proto.Extension extension = 4;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        4, *this_._impl_.extension_, this_._impl_.extension_->GetCachedSize(), target,
        stream);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.ErrorInfo)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    // optional string message = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_message());
    }
    // optional string type = 3;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_type());
    }
    // optional .mcs_proto.Extension extension = 4;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.extension_);
    }
  }
   {
    // required int32 code = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_code());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_message(from._internal_message());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_type(from._internal_type());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      ABSL_DCHECK(from._impl_.extension_ != nullptr);
      if (_this->_impl_.extension_ == nullptr) {
        _this->_impl_.extension_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.extension_);
      } else {
        _this->_impl_.extension_->MergeFrom(*from._impl_.extension_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.code_ = from._impl_.code_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool ErrorInfo::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const ErrorInfo&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  if (CheckHasBit(this_._impl_._has_bits_[0], 0x00000004U)) {
    if (!this_._impl_.extension_->IsInitialized()) return false;
  }
  return true;
}

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

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

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

Setting::Setting(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const Setting& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Setting_get_class_data()) {

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Setting_class_data_ =
    Setting::InternalGenerateClassData_(Setting_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.value_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // required string value = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_value();
    target = stream->WriteStringMaybeAliased(2, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.Setting)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // required string name = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_name());
    }
    // required string value = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_value());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_name(from._internal_name());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_value(from._internal_value());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool Setting::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const Setting&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  return true;
}

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

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

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

HeartbeatStat::HeartbeatStat(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const HeartbeatStat& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, HeartbeatStat_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  HeartbeatStat* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, timeout_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, timeout_),
           offsetof(Impl_, interval_ms_) -
               offsetof(Impl_, timeout_) +
               sizeof(Impl_::interval_ms_));

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

inline void HeartbeatStat::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, timeout_),
           0,
           offsetof(Impl_, interval_ms_) -
               offsetof(Impl_, timeout_) +
               sizeof(Impl_::interval_ms_));
}
HeartbeatStat::~HeartbeatStat() {
  // @@protoc_insertion_point(destructor:mcs_proto.HeartbeatStat)
  SharedDtor(*this);
}
inline void HeartbeatStat::SharedDtor(MessageLite& self) {
  HeartbeatStat& this_ = static_cast<HeartbeatStat&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.ip_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite HeartbeatStat_class_data_ =
    HeartbeatStat::InternalGenerateClassData_(HeartbeatStat_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.ip_.ClearNonDefaultToEmpty();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000006U)) {
    ::memset(&_impl_.timeout_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.interval_ms_) -
        reinterpret_cast<char*>(&_impl_.timeout_)) + sizeof(_impl_.interval_ms_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // required bool timeout = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        2, this_._internal_timeout(), target);
  }

  // required int32 interval_ms = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<3>(
            stream, this_._internal_interval_ms(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.HeartbeatStat)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00000002U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x00000005U)) {
    // required string ip = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_ip());
    }
    // required int32 interval_ms = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_interval_ms());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_ip(from._internal_ip());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.timeout_ = from._impl_.timeout_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.interval_ms_ = from._impl_.interval_ms_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool HeartbeatStat::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const HeartbeatStat&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  return true;
}

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

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

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

HeartbeatConfig::HeartbeatConfig(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const HeartbeatConfig& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, HeartbeatConfig_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  HeartbeatConfig* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, upload_stat_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, upload_stat_),
           offsetof(Impl_, interval_ms_) -
               offsetof(Impl_, upload_stat_) +
               sizeof(Impl_::interval_ms_));

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

inline void HeartbeatConfig::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, upload_stat_),
           0,
           offsetof(Impl_, interval_ms_) -
               offsetof(Impl_, upload_stat_) +
               sizeof(Impl_::interval_ms_));
}
HeartbeatConfig::~HeartbeatConfig() {
  // @@protoc_insertion_point(destructor:mcs_proto.HeartbeatConfig)
  SharedDtor(*this);
}
inline void HeartbeatConfig::SharedDtor(MessageLite& self) {
  HeartbeatConfig& this_ = static_cast<HeartbeatConfig&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.ip_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite HeartbeatConfig_class_data_ =
    HeartbeatConfig::InternalGenerateClassData_(HeartbeatConfig_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.ip_.ClearNonDefaultToEmpty();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000006U)) {
    ::memset(&_impl_.upload_stat_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.interval_ms_) -
        reinterpret_cast<char*>(&_impl_.upload_stat_)) + sizeof(_impl_.interval_ms_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional bool upload_stat = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        1, this_._internal_upload_stat(), target);
  }

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

  // optional int32 interval_ms = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<3>(
            stream, this_._internal_interval_ms(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.HeartbeatConfig)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00000002U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x00000005U)) {
    // optional string ip = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_ip());
    }
    // optional int32 interval_ms = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_interval_ms());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_ip(from._internal_ip());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.upload_stat_ = from._impl_.upload_stat_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.interval_ms_ = from._impl_.interval_ms_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ClientEvent_class_data_ =
    ClientEvent::InternalGenerateClassData_(ClientEvent_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    ::memset(&_impl_.type_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.time_connection_established_ms_) -
        reinterpret_cast<char*>(&_impl_.type_)) + sizeof(_impl_.time_connection_established_ms_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional .mcs_proto.ClientEvent.Type type = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
        1, this_._internal_type(), target);
  }

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

  // optional int32 network_type = 200;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(
        200, this_._internal_network_type(), target);
  }

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

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

  // optional int32 error_code = 204;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(
        204, this_._internal_error_code(), target);
  }

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.ClientEvent)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    // optional .mcs_proto.ClientEvent.Type type = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::_pbi::WireFormatLite::EnumSize(this_._internal_type());
    }
    // optional uint32 number_discarded_events = 100;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt32Size(
                                      this_._internal_number_discarded_events());
    }
    // optional int32 network_type = 200;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
                                      this_._internal_network_type());
    }
    // optional int32 error_code = 204;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
                                      this_._internal_error_code());
    }
    // optional uint64 time_connection_started_ms = 202;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt64Size(
                                      this_._internal_time_connection_started_ms());
    }
    // optional uint64 time_connection_ended_ms = 203;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt64Size(
                                      this_._internal_time_connection_ended_ms());
    }
    // optional uint64 time_connection_established_ms = 300;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 2 + ::_pbi::WireFormatLite::UInt64Size(
                                      this_._internal_time_connection_established_ms());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_impl_.type_ = from._impl_.type_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.number_discarded_events_ = from._impl_.number_discarded_events_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.network_type_ = from._impl_.network_type_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.error_code_ = from._impl_.error_code_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.time_connection_started_ms_ = from._impl_.time_connection_started_ms_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.time_connection_ended_ms_ = from._impl_.time_connection_ended_ms_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.time_connection_established_ms_ = from._impl_.time_connection_established_ms_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

LoginRequest::LoginRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, LoginRequest_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mcs_proto.LoginRequest)
}
PROTOBUF_NDEBUG_INLINE LoginRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mcs_proto::LoginRequest& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        setting_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mcs_proto::LoginRequest,
              PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.setting_)>()
          , from.setting_
        }
        ,
        received_persistent_id_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mcs_proto::LoginRequest,
              PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.received_persistent_id_)>()
          , from.received_persistent_id_
        }
        ,
        client_event_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mcs_proto::LoginRequest,
              PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.client_event_)>()
          , from.client_event_
        }
        ,
        id_(arena, from.id_),
        domain_(arena, from.domain_),
        user_(arena, from.user_),
        resource_(arena, from.resource_),
        auth_token_(arena, from.auth_token_),
        device_id_(arena, from.device_id_) {}

LoginRequest::LoginRequest(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const LoginRequest& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, LoginRequest_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  LoginRequest* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.heartbeat_stat_ = (CheckHasBit(cached_has_bits, 0x00000200U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.heartbeat_stat_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, last_rmq_id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, last_rmq_id_),
           offsetof(Impl_, auth_service_) -
               offsetof(Impl_, last_rmq_id_) +
               sizeof(Impl_::auth_service_));

  // @@protoc_insertion_point(copy_constructor:mcs_proto.LoginRequest)
}
PROTOBUF_NDEBUG_INLINE LoginRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        setting_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.setting_)>()
         }
        ,
        received_persistent_id_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.received_persistent_id_)>()
         }
        ,
        client_event_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::LoginRequest,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginRequest, _impl_.client_event_)>()
         }
        ,
        id_(arena),
        domain_(arena),
        user_(arena),
        resource_(arena),
        auth_token_(arena),
        device_id_(arena),
        auth_service_{static_cast< ::mcs_proto::LoginRequest_AuthService >(2)} {}

inline void LoginRequest::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, heartbeat_stat_),
           0,
           offsetof(Impl_, status_) -
               offsetof(Impl_, heartbeat_stat_) +
               sizeof(Impl_::status_));
}
LoginRequest::~LoginRequest() {
  // @@protoc_insertion_point(destructor:mcs_proto.LoginRequest)
  SharedDtor(*this);
}
inline void LoginRequest::SharedDtor(MessageLite& self) {
  LoginRequest& this_ = static_cast<LoginRequest&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.id_.Destroy();
  this_._impl_.domain_.Destroy();
  this_._impl_.user_.Destroy();
  this_._impl_.resource_.Destroy();
  this_._impl_.auth_token_.Destroy();
  this_._impl_.device_id_.Destroy();
  delete this_._impl_.heartbeat_stat_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite LoginRequest_class_data_ =
    LoginRequest::InternalGenerateClassData_(LoginRequest_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.setting_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.received_persistent_id_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.client_event_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.domain_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.user_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.resource_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.auth_token_.ClearNonDefaultToEmpty();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _impl_.device_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(_impl_.heartbeat_stat_ != nullptr);
      _impl_.heartbeat_stat_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000fc00U)) {
    ::memset(&_impl_.last_rmq_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.status_) -
        reinterpret_cast<char*>(&_impl_.last_rmq_id_)) + sizeof(_impl_.status_));
  }
  _impl_.auth_service_ = 2;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // required string id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    const ::std::string& _s = this_._internal_id();
    target = stream->WriteStringMaybeAliased(1, _s, target);
  }

  // required string domain = 2;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    const ::std::string& _s = this_._internal_domain();
    target = stream->WriteStringMaybeAliased(2, _s, target);
  }

  // required string user = 3;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    const ::std::string& _s = this_._internal_user();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

  // required string resource = 4;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    const ::std::string& _s = this_._internal_resource();
    target = stream->WriteStringMaybeAliased(4, _s, target);
  }

  // required string auth_token = 5;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    const ::std::string& _s = this_._internal_auth_token();
    target = stream->WriteStringMaybeAliased(5, _s, target);
  }

  // optional string device_id = 6;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    const ::std::string& _s = this_._internal_device_id();
    target = stream->WriteStringMaybeAliased(6, _s, target);
  }

  // optional int64 last_rmq_id = 7;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<7>(
            stream, this_._internal_last_rmq_id(), target);
  }

  // repeated .mcs_proto.Setting setting = 8;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_setting_size());
         i < n; i++) {
      const auto& repfield = this_._internal_setting().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              8, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // repeated string received_persistent_id = 10;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    for (int i = 0, n = this_._internal_received_persistent_id_size(); i < n; ++i) {
      const auto& s = this_._internal_received_persistent_id().Get(i);
      target = stream->WriteString(10, s, target);
    }
  }

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

  // optional .mcs_proto.HeartbeatStat heartbeat_stat = 13;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        13, *this_._impl_.heartbeat_stat_, this_._impl_.heartbeat_stat_->GetCachedSize(), target,
        stream);
  }

  // optional bool use_rmq2 = 14;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        14, this_._internal_use_rmq2(), target);
  }

  // optional int64 account_id = 15;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<15>(
            stream, this_._internal_account_id(), target);
  }

  // optional .mcs_proto.LoginRequest.AuthService auth_service = 16;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
        16, this_._internal_auth_service(), target);
  }

  // optional int32 network_type = 17;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(
        17, this_._internal_network_type(), target);
  }

  // optional int64 status = 18;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(
        18, this_._internal_status(), target);
  }

  // repeated .mcs_proto.ClientEvent client_event = 22;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_client_event_size());
         i < n; i++) {
      const auto& repfield = this_._internal_client_event().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              22, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.LoginRequest)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += ::absl::popcount(0x00001800U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
    // repeated .mcs_proto.Setting setting = 8;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_setting_size();
      for (const auto& msg : this_._internal_setting()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // repeated string received_persistent_id = 10;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_received_persistent_id().size());
      for (int i = 0, n = this_._internal_received_persistent_id().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_received_persistent_id().Get(i));
      }
    }
    // repeated .mcs_proto.ClientEvent client_event = 22;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 2UL * this_._internal_client_event_size();
      for (const auto& msg : this_._internal_client_event()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000f8U)) {
    // required string id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_id());
    }
    // required string domain = 2;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_domain());
    }
    // required string user = 3;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_user());
    }
    // required string resource = 4;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_resource());
    }
    // required string auth_token = 5;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_auth_token());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000e700U)) {
    // optional string device_id = 6;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_device_id());
    }
    // optional .mcs_proto.HeartbeatStat heartbeat_stat = 13;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.heartbeat_stat_);
    }
    // optional int64 last_rmq_id = 7;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_last_rmq_id());
    }
    // optional int32 network_type = 17;
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
                                      this_._internal_network_type());
    }
    // optional int64 account_id = 15;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_account_id());
    }
    // optional int64 status = 18;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                      this_._internal_status());
    }
  }
   {
    // optional .mcs_proto.LoginRequest.AuthService auth_service = 16;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      total_size += 2 +
                    ::_pbi::WireFormatLite::EnumSize(this_._internal_auth_service());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_setting()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_setting());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_mutable_received_persistent_id()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_received_persistent_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_mutable_client_event()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_client_event());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_id(from._internal_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_domain(from._internal_domain());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_user(from._internal_user());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_internal_set_resource(from._internal_resource());
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_internal_set_auth_token(from._internal_auth_token());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_internal_set_device_id(from._internal_device_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      ABSL_DCHECK(from._impl_.heartbeat_stat_ != nullptr);
      if (_this->_impl_.heartbeat_stat_ == nullptr) {
        _this->_impl_.heartbeat_stat_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.heartbeat_stat_);
      } else {
        _this->_impl_.heartbeat_stat_->MergeFrom(*from._impl_.heartbeat_stat_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.last_rmq_id_ = from._impl_.last_rmq_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.adaptive_heartbeat_ = from._impl_.adaptive_heartbeat_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.use_rmq2_ = from._impl_.use_rmq2_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.network_type_ = from._impl_.network_type_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.account_id_ = from._impl_.account_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
  }
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    _this->_impl_.auth_service_ = from._impl_.auth_service_;
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool LoginRequest::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const LoginRequest&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  if (!::google::protobuf::internal::AllAreInitialized(this_._internal_setting()))
    return false;
  if (CheckHasBit(this_._impl_._has_bits_[0], 0x00000200U)) {
    if (!this_._impl_.heartbeat_stat_->IsInitialized()) return false;
  }
  return true;
}

void LoginRequest::InternalSwap(LoginRequest* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.setting_.InternalSwap(&other->_impl_.setting_);
  _impl_.received_persistent_id_.InternalSwap(&other->_impl_.received_persistent_id_);
  _impl_.client_event_.InternalSwap(&other->_impl_.client_event_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.id_, &other->_impl_.id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.domain_, &other->_impl_.domain_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.user_, &other->_impl_.user_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.resource_, &other->_impl_.resource_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.auth_token_, &other->_impl_.auth_token_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.device_id_, &other->_impl_.device_id_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.auth_service_)
      + sizeof(LoginRequest::_impl_.auth_service_)
      - PROTOBUF_FIELD_OFFSET(LoginRequest, _impl_.heartbeat_stat_)>(
          reinterpret_cast<char*>(&_impl_.heartbeat_stat_),
          reinterpret_cast<char*>(&other->_impl_.heartbeat_stat_));
}

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

LoginResponse::LoginResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, LoginResponse_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mcs_proto.LoginResponse)
}
PROTOBUF_NDEBUG_INLINE LoginResponse::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mcs_proto::LoginResponse& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        setting_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mcs_proto::LoginResponse,
              PROTOBUF_FIELD_OFFSET(::mcs_proto::LoginResponse, _impl_.setting_)>()
          , from.setting_
        }
        ,
        id_(arena, from.id_),
        jid_(arena, from.jid_) {}

LoginResponse::LoginResponse(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const LoginResponse& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, LoginResponse_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  LoginResponse* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.error_ = (CheckHasBit(cached_has_bits, 0x00000008U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.error_)
                : nullptr;
  _impl_.heartbeat_config_ = (CheckHasBit(cached_has_bits, 0x00000010U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.heartbeat_config_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, stream_id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, stream_id_),
           offsetof(Impl_, server_timestamp_) -
               offsetof(Impl_, stream_id_) +
               sizeof(Impl_::server_timestamp_));

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

inline void LoginResponse::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, error_),
           0,
           offsetof(Impl_, server_timestamp_) -
               offsetof(Impl_, error_) +
               sizeof(Impl_::server_timestamp_));
}
LoginResponse::~LoginResponse() {
  // @@protoc_insertion_point(destructor:mcs_proto.LoginResponse)
  SharedDtor(*this);
}
inline void LoginResponse::SharedDtor(MessageLite& self) {
  LoginResponse& this_ = static_cast<LoginResponse&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.id_.Destroy();
  this_._impl_.jid_.Destroy();
  delete this_._impl_.error_;
  delete this_._impl_.heartbeat_config_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite LoginResponse_class_data_ =
    LoginResponse::InternalGenerateClassData_(LoginResponse_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.setting_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.jid_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(_impl_.error_ != nullptr);
      _impl_.error_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      ABSL_DCHECK(_impl_.heartbeat_config_ != nullptr);
      _impl_.heartbeat_config_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000e0U)) {
    ::memset(&_impl_.stream_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.server_timestamp_) -
        reinterpret_cast<char*>(&_impl_.stream_id_)) + sizeof(_impl_.server_timestamp_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // required string id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_id();
    target = stream->WriteStringMaybeAliased(1, _s, target);
  }

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

  // optional .mcs_proto.ErrorInfo error = 3;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        3, *this_._impl_.error_, this_._impl_.error_->GetCachedSize(), target,
        stream);
  }

  // repeated .mcs_proto.Setting setting = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_setting_size());
         i < n; i++) {
      const auto& repfield = this_._internal_setting().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              4, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // optional int32 stream_id = 5;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
            stream, this_._internal_stream_id(), target);
  }

  // optional int32 last_stream_id_received = 6;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<6>(
            stream, this_._internal_last_stream_id_received(), target);
  }

  // optional .mcs_proto.HeartbeatConfig heartbeat_config = 7;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        7, *this_._impl_.heartbeat_config_, this_._impl_.heartbeat_config_->GetCachedSize(), target,
        stream);
  }

  // optional int64 server_timestamp = 8;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<8>(
            stream, this_._internal_server_timestamp(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.LoginResponse)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
   {
    // repeated .mcs_proto.Setting setting = 4;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_setting_size();
      for (const auto& msg : this_._internal_setting()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
  }
   {
    // required string id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_id());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000fcU)) {
    // optional string jid = 2;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_jid());
    }
    // optional .mcs_proto.ErrorInfo error = 3;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.error_);
    }
    // optional .mcs_proto.HeartbeatConfig heartbeat_config = 7;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.heartbeat_config_);
    }
    // optional int32 stream_id = 5;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_stream_id());
    }
    // optional int32 last_stream_id_received = 6;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_last_stream_id_received());
    }
    // optional int64 server_timestamp = 8;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_server_timestamp());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_setting()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_setting());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_id(from._internal_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_jid(from._internal_jid());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      ABSL_DCHECK(from._impl_.error_ != nullptr);
      if (_this->_impl_.error_ == nullptr) {
        _this->_impl_.error_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.error_);
      } else {
        _this->_impl_.error_->MergeFrom(*from._impl_.error_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      ABSL_DCHECK(from._impl_.heartbeat_config_ != nullptr);
      if (_this->_impl_.heartbeat_config_ == nullptr) {
        _this->_impl_.heartbeat_config_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.heartbeat_config_);
      } else {
        _this->_impl_.heartbeat_config_->MergeFrom(*from._impl_.heartbeat_config_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.stream_id_ = from._impl_.stream_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.last_stream_id_received_ = from._impl_.last_stream_id_received_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.server_timestamp_ = from._impl_.server_timestamp_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool LoginResponse::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const LoginResponse&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  if (!::google::protobuf::internal::AllAreInitialized(this_._internal_setting()))
    return false;
  if (CheckHasBit(this_._impl_._has_bits_[0], 0x00000008U)) {
    if (!this_._impl_.error_->IsInitialized()) return false;
  }
  return true;
}

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

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

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

StreamErrorStanza::StreamErrorStanza(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const StreamErrorStanza& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, StreamErrorStanza_get_class_data()) {

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite StreamErrorStanza_class_data_ =
    StreamErrorStanza::InternalGenerateClassData_(StreamErrorStanza_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.type_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.text_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.StreamErrorStanza)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
   {
    // required string type = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_type());
    }
  }
   {
    // optional string text = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_text());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_type(from._internal_type());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_text(from._internal_text());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool StreamErrorStanza::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const StreamErrorStanza&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  return true;
}

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

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Close_class_data_ =
    Close::InternalGenerateClassData_(Close_globals_._default);

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

  _internal_metadata_.Clear<::std::string>();
}

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.Close)
  return target;
}

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

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void Close::InternalSwap(Close* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
}

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

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

Extension::Extension(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const Extension& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Extension_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  Extension* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  _impl_.id_ = from._impl_.id_;

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Extension_class_data_ =
    Extension::InternalGenerateClassData_(Extension_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.data_.ClearNonDefaultToEmpty();
  }
  _impl_.id_ = 0;
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // required int32 id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
            stream, this_._internal_id(), target);
  }

  // required bytes data = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_data();
    target = stream->WriteBytesMaybeAliased(2, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.Extension)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // required bytes data = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_data());
    }
    // required int32 id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_id());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_data(from._internal_data());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.id_ = from._impl_.id_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool Extension::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const Extension&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  return true;
}

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

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

IqStanza::IqStanza(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, IqStanza_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mcs_proto.IqStanza)
}
PROTOBUF_NDEBUG_INLINE IqStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mcs_proto::IqStanza& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        id_(arena, from.id_),
        from_(arena, from.from_),
        to_(arena, from.to_),
        persistent_id_(arena, from.persistent_id_) {}

IqStanza::IqStanza(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const IqStanza& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, IqStanza_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  IqStanza* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.error_ = (CheckHasBit(cached_has_bits, 0x00000010U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.error_)
                : nullptr;
  _impl_.extension_ = (CheckHasBit(cached_has_bits, 0x00000020U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.extension_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, rmq_id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, rmq_id_),
           offsetof(Impl_, last_stream_id_received_) -
               offsetof(Impl_, rmq_id_) +
               sizeof(Impl_::last_stream_id_received_));

  // @@protoc_insertion_point(copy_constructor:mcs_proto.IqStanza)
}
PROTOBUF_NDEBUG_INLINE IqStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        id_(arena),
        from_(arena),
        to_(arena),
        persistent_id_(arena) {}

inline void IqStanza::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, error_),
           0,
           offsetof(Impl_, last_stream_id_received_) -
               offsetof(Impl_, error_) +
               sizeof(Impl_::last_stream_id_received_));
}
IqStanza::~IqStanza() {
  // @@protoc_insertion_point(destructor:mcs_proto.IqStanza)
  SharedDtor(*this);
}
inline void IqStanza::SharedDtor(MessageLite& self) {
  IqStanza& this_ = static_cast<IqStanza&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.id_.Destroy();
  this_._impl_.from_.Destroy();
  this_._impl_.to_.Destroy();
  this_._impl_.persistent_id_.Destroy();
  delete this_._impl_.error_;
  delete this_._impl_.extension_;
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite IqStanza_class_data_ =
    IqStanza::InternalGenerateClassData_(IqStanza_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.from_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.to_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.persistent_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      ABSL_DCHECK(_impl_.error_ != nullptr);
      _impl_.error_->Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(_impl_.extension_ != nullptr);
      _impl_.extension_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000c0U)) {
    ::memset(&_impl_.rmq_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.type_) -
        reinterpret_cast<char*>(&_impl_.rmq_id_)) + sizeof(_impl_.type_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000f00U)) {
    ::memset(&_impl_.stream_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.last_stream_id_received_) -
        reinterpret_cast<char*>(&_impl_.stream_id_)) + sizeof(_impl_.last_stream_id_received_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional int64 rmq_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
            stream, this_._internal_rmq_id(), target);
  }

  // required .mcs_proto.IqStanza.IqType type = 2;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
        2, this_._internal_type(), target);
  }

  // required string id = 3;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    const ::std::string& _s = this_._internal_id();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

  // optional string from = 4;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_from();
    target = stream->WriteStringMaybeAliased(4, _s, target);
  }

  // optional string to = 5;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    const ::std::string& _s = this_._internal_to();
    target = stream->WriteStringMaybeAliased(5, _s, target);
  }

  // optional .mcs_proto.ErrorInfo error = 6;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.error_, this_._impl_.error_->GetCachedSize(), target,
        stream);
  }

  // optional .mcs_proto.Extension extension = 7;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        7, *this_._impl_.extension_, this_._impl_.extension_->GetCachedSize(), target,
        stream);
  }

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

  // optional int32 stream_id = 9;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<9>(
            stream, this_._internal_stream_id(), target);
  }

  // optional int32 last_stream_id_received = 10;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<10>(
            stream, this_._internal_last_stream_id_received(), target);
  }

  // optional int64 account_id = 11;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<11>(
            stream, this_._internal_account_id(), target);
  }

  // optional int64 status = 12;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<12>(
            stream, this_._internal_status(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.IqStanza)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
   {
    // required string id = 3;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_id());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000007eU)) {
    // optional string from = 4;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_from());
    }
    // optional string to = 5;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_to());
    }
    // optional string persistent_id = 8;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_persistent_id());
    }
    // optional .mcs_proto.ErrorInfo error = 6;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.error_);
    }
    // optional .mcs_proto.Extension extension = 7;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.extension_);
    }
    // optional int64 rmq_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_rmq_id());
    }
  }
   {
    // required .mcs_proto.IqStanza.IqType type = 2;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 +
                    ::_pbi::WireFormatLite::EnumSize(this_._internal_type());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000f00U)) {
    // optional int32 stream_id = 9;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_stream_id());
    }
    // optional int64 account_id = 11;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_account_id());
    }
    // optional int64 status = 12;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
          this_._internal_status());
    }
    // optional int32 last_stream_id_received = 10;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_last_stream_id_received());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_id(from._internal_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_from(from._internal_from());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_to(from._internal_to());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_persistent_id(from._internal_persistent_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      ABSL_DCHECK(from._impl_.error_ != nullptr);
      if (_this->_impl_.error_ == nullptr) {
        _this->_impl_.error_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.error_);
      } else {
        _this->_impl_.error_->MergeFrom(*from._impl_.error_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      ABSL_DCHECK(from._impl_.extension_ != nullptr);
      if (_this->_impl_.extension_ == nullptr) {
        _this->_impl_.extension_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.extension_);
      } else {
        _this->_impl_.extension_->MergeFrom(*from._impl_.extension_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_impl_.rmq_id_ = from._impl_.rmq_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_impl_.type_ = from._impl_.type_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00000f00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_impl_.stream_id_ = from._impl_.stream_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.account_id_ = from._impl_.account_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.last_stream_id_received_ = from._impl_.last_stream_id_received_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool IqStanza::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const IqStanza&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  if (CheckHasBit(this_._impl_._has_bits_[0], 0x00000010U)) {
    if (!this_._impl_.error_->IsInitialized()) return false;
  }
  if (CheckHasBit(this_._impl_._has_bits_[0], 0x00000020U)) {
    if (!this_._impl_.extension_->IsInitialized()) return false;
  }
  return true;
}

void IqStanza::InternalSwap(IqStanza* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.id_, &other->_impl_.id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.from_, &other->_impl_.from_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.to_, &other->_impl_.to_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.persistent_id_, &other->_impl_.persistent_id_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.last_stream_id_received_)
      + sizeof(IqStanza::_impl_.last_stream_id_received_)
      - PROTOBUF_FIELD_OFFSET(IqStanza, _impl_.error_)>(
          reinterpret_cast<char*>(&_impl_.error_),
          reinterpret_cast<char*>(&other->_impl_.error_));
}

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

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

AppData::AppData(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const AppData& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, AppData_get_class_data()) {

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite AppData_class_data_ =
    AppData::InternalGenerateClassData_(AppData_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.key_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.value_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

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

  // required string value = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_value();
    target = stream->WriteStringMaybeAliased(2, _s, target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.AppData)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // required string key = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_key());
    }
    // required string value = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_value());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_set_key(from._internal_key());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_value(from._internal_value());
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool AppData::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const AppData&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  return true;
}

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

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

DataMessageStanza::DataMessageStanza(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, DataMessageStanza_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mcs_proto.DataMessageStanza)
}
PROTOBUF_NDEBUG_INLINE DataMessageStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mcs_proto::DataMessageStanza& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        app_data_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mcs_proto::DataMessageStanza,
              PROTOBUF_FIELD_OFFSET(::mcs_proto::DataMessageStanza, _impl_.app_data_)>()
          , from.app_data_
        }
        ,
        id_(arena, from.id_),
        from_(arena, from.from_),
        to_(arena, from.to_),
        category_(arena, from.category_),
        token_(arena, from.token_),
        persistent_id_(arena, from.persistent_id_),
        reg_id_(arena, from.reg_id_),
        raw_data_(arena, from.raw_data_) {}

DataMessageStanza::DataMessageStanza(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const DataMessageStanza& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, DataMessageStanza_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  DataMessageStanza* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, stream_id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, stream_id_),
           offsetof(Impl_, queued_) -
               offsetof(Impl_, stream_id_) +
               sizeof(Impl_::queued_));

  // @@protoc_insertion_point(copy_constructor:mcs_proto.DataMessageStanza)
}
PROTOBUF_NDEBUG_INLINE DataMessageStanza::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        app_data_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mcs_proto::DataMessageStanza,
            PROTOBUF_FIELD_OFFSET(::mcs_proto::DataMessageStanza, _impl_.app_data_)>()
         }
        ,
        id_(arena),
        from_(arena),
        to_(arena),
        category_(arena),
        token_(arena),
        persistent_id_(arena),
        reg_id_(arena),
        raw_data_(arena) {}

inline void DataMessageStanza::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, stream_id_),
           0,
           offsetof(Impl_, queued_) -
               offsetof(Impl_, stream_id_) +
               sizeof(Impl_::queued_));
}
DataMessageStanza::~DataMessageStanza() {
  // @@protoc_insertion_point(destructor:mcs_proto.DataMessageStanza)
  SharedDtor(*this);
}
inline void DataMessageStanza::SharedDtor(MessageLite& self) {
  DataMessageStanza& this_ = static_cast<DataMessageStanza&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.id_.Destroy();
  this_._impl_.from_.Destroy();
  this_._impl_.to_.Destroy();
  this_._impl_.category_.Destroy();
  this_._impl_.token_.Destroy();
  this_._impl_.persistent_id_.Destroy();
  this_._impl_.reg_id_.Destroy();
  this_._impl_.raw_data_.Destroy();
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite DataMessageStanza_class_data_ =
    DataMessageStanza::InternalGenerateClassData_(DataMessageStanza_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.app_data_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.from_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _impl_.to_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _impl_.category_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _impl_.token_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _impl_.persistent_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _impl_.reg_id_.ClearNonDefaultToEmpty();
    }
  }
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    _impl_.raw_data_.ClearNonDefaultToEmpty();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000fe00U)) {
    ::memset(&_impl_.stream_id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.sent_) -
        reinterpret_cast<char*>(&_impl_.stream_id_)) + sizeof(_impl_.sent_));
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00030000U)) {
    ::memset(&_impl_.status_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.queued_) -
        reinterpret_cast<char*>(&_impl_.status_)) + sizeof(_impl_.queued_));
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional string id = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    const ::std::string& _s = this_._internal_id();
    target = stream->WriteStringMaybeAliased(2, _s, target);
  }

  // required string from = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    const ::std::string& _s = this_._internal_from();
    target = stream->WriteStringMaybeAliased(3, _s, target);
  }

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

  // required string category = 5;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    const ::std::string& _s = this_._internal_category();
    target = stream->WriteStringMaybeAliased(5, _s, target);
  }

  // optional string token = 6;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    const ::std::string& _s = this_._internal_token();
    target = stream->WriteStringMaybeAliased(6, _s, target);
  }

  // repeated .mcs_proto.AppData app_data = 7;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_app_data_size());
         i < n; i++) {
      const auto& repfield = this_._internal_app_data().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              7, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // optional bool from_trusted_server = 8;
  if (CheckHasBit(cached_has_bits, 0x00001000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        8, this_._internal_from_trusted_server(), target);
  }

  // optional string persistent_id = 9;
  if (CheckHasBit(cached_has_bits, 0x00000040U)) {
    const ::std::string& _s = this_._internal_persistent_id();
    target = stream->WriteStringMaybeAliased(9, _s, target);
  }

  // optional int32 stream_id = 10;
  if (CheckHasBit(cached_has_bits, 0x00000200U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<10>(
            stream, this_._internal_stream_id(), target);
  }

  // optional int32 last_stream_id_received = 11;
  if (CheckHasBit(cached_has_bits, 0x00000400U)) {
    target =
        ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<11>(
            stream, this_._internal_last_stream_id_received(), target);
  }

  // optional string reg_id = 13;
  if (CheckHasBit(cached_has_bits, 0x00000080U)) {
    const ::std::string& _s = this_._internal_reg_id();
    target = stream->WriteStringMaybeAliased(13, _s, target);
  }

  // optional int64 device_user_id = 16;
  if (CheckHasBit(cached_has_bits, 0x00000800U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(
        16, this_._internal_device_user_id(), target);
  }

  // optional int32 ttl = 17;
  if (CheckHasBit(cached_has_bits, 0x00004000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(
        17, this_._internal_ttl(), target);
  }

  // optional int64 sent = 18;
  if (CheckHasBit(cached_has_bits, 0x00008000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(
        18, this_._internal_sent(), target);
  }

  // optional int32 queued = 19;
  if (CheckHasBit(cached_has_bits, 0x00020000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt32ToArray(
        19, this_._internal_queued(), target);
  }

  // optional int64 status = 20;
  if (CheckHasBit(cached_has_bits, 0x00010000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(
        20, this_._internal_status(), target);
  }

  // optional bytes raw_data = 21;
  if (CheckHasBit(cached_has_bits, 0x00000100U)) {
    const ::std::string& _s = this_._internal_raw_data();
    target = stream->WriteBytesMaybeAliased(21, _s, target);
  }

  // optional bool immediate_ack = 24;
  if (CheckHasBit(cached_has_bits, 0x00002000U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        24, this_._internal_immediate_ack(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.DataMessageStanza)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += static_cast<bool>(0x00002000U & cached_has_bits) * 3;
  total_size += static_cast<bool>(0x00001000U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    // repeated .mcs_proto.AppData app_data = 7;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_app_data_size();
      for (const auto& msg : this_._internal_app_data()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional string id = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_id());
    }
  }
   {
    // required string from = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_from());
    }
  }
   {
    // optional string to = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_to());
    }
  }
   {
    // required string category = 5;
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_category());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x000000e0U)) {
    // optional string token = 6;
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_token());
    }
    // optional string persistent_id = 9;
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_persistent_id());
    }
    // optional string reg_id = 13;
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                      this_._internal_reg_id());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000cf00U)) {
    // optional bytes raw_data = 21;
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      total_size += 2 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_raw_data());
    }
    // optional int32 stream_id = 10;
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_stream_id());
    }
    // optional int32 last_stream_id_received = 11;
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
          this_._internal_last_stream_id_received());
    }
    // optional int64 device_user_id = 16;
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                      this_._internal_device_user_id());
    }
    // optional int32 ttl = 17;
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
                                      this_._internal_ttl());
    }
    // optional int64 sent = 18;
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                      this_._internal_sent());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00030000U)) {
    // optional int64 status = 20;
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
                                      this_._internal_status());
    }
    // optional int32 queued = 19;
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      total_size += 2 + ::_pbi::WireFormatLite::Int32Size(
                                      this_._internal_queued());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_app_data()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_app_data());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_internal_set_id(from._internal_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_internal_set_from(from._internal_from());
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_internal_set_to(from._internal_to());
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_internal_set_category(from._internal_category());
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_internal_set_token(from._internal_token());
    }
    if (CheckHasBit(cached_has_bits, 0x00000040U)) {
      _this->_internal_set_persistent_id(from._internal_persistent_id());
    }
    if (CheckHasBit(cached_has_bits, 0x00000080U)) {
      _this->_internal_set_reg_id(from._internal_reg_id());
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
    if (CheckHasBit(cached_has_bits, 0x00000100U)) {
      _this->_internal_set_raw_data(from._internal_raw_data());
    }
    if (CheckHasBit(cached_has_bits, 0x00000200U)) {
      _this->_impl_.stream_id_ = from._impl_.stream_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000400U)) {
      _this->_impl_.last_stream_id_received_ = from._impl_.last_stream_id_received_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000800U)) {
      _this->_impl_.device_user_id_ = from._impl_.device_user_id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00001000U)) {
      _this->_impl_.from_trusted_server_ = from._impl_.from_trusted_server_;
    }
    if (CheckHasBit(cached_has_bits, 0x00002000U)) {
      _this->_impl_.immediate_ack_ = from._impl_.immediate_ack_;
    }
    if (CheckHasBit(cached_has_bits, 0x00004000U)) {
      _this->_impl_.ttl_ = from._impl_.ttl_;
    }
    if (CheckHasBit(cached_has_bits, 0x00008000U)) {
      _this->_impl_.sent_ = from._impl_.sent_;
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x00030000U)) {
    if (CheckHasBit(cached_has_bits, 0x00010000U)) {
      _this->_impl_.status_ = from._impl_.status_;
    }
    if (CheckHasBit(cached_has_bits, 0x00020000U)) {
      _this->_impl_.queued_ = from._impl_.queued_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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

PROTOBUF_NOINLINE bool DataMessageStanza::IsInitializedImpl(
    const MessageLite& msg) {
  auto& this_ = static_cast<const DataMessageStanza&>(msg);
  if (_Internal::MissingRequiredFields(this_._impl_._has_bits_)) {
    return false;
  }
  if (!::google::protobuf::internal::AllAreInitialized(this_._internal_app_data()))
    return false;
  return true;
}

void DataMessageStanza::InternalSwap(DataMessageStanza* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  auto* arena = GetArena();
  ABSL_DCHECK_EQ(arena, other->GetArena());
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.app_data_.InternalSwap(&other->_impl_.app_data_);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.id_, &other->_impl_.id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.from_, &other->_impl_.from_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.to_, &other->_impl_.to_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.category_, &other->_impl_.category_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.token_, &other->_impl_.token_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.persistent_id_, &other->_impl_.persistent_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.reg_id_, &other->_impl_.reg_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.raw_data_, &other->_impl_.raw_data_, arena);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.queued_)
      + sizeof(DataMessageStanza::_impl_.queued_)
      - PROTOBUF_FIELD_OFFSET(DataMessageStanza, _impl_.stream_id_)>(
          reinterpret_cast<char*>(&_impl_.stream_id_),
          reinterpret_cast<char*>(&other->_impl_.stream_id_));
}

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite StreamAck_class_data_ =
    StreamAck::InternalGenerateClassData_(StreamAck_globals_._default);

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

  _internal_metadata_.Clear<::std::string>();
}

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.StreamAck)
  return target;
}

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

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

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void StreamAck::InternalSwap(StreamAck* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
}

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

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

SelectiveAck::SelectiveAck(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const SelectiveAck& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SelectiveAck_get_class_data()) {

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

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SelectiveAck_class_data_ =
    SelectiveAck::InternalGenerateClassData_(SelectiveAck_globals_._default);

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

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _impl_.id_.Clear();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // repeated string id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (int i = 0, n = this_._internal_id_size(); i < n; ++i) {
      const auto& s = this_._internal_id().Get(i);
      target = stream->WriteString(1, s, target);
    }
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mcs_proto.SelectiveAck)
  return target;
}

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

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

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
   {
    // repeated string id = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size +=
          1 * ::google::protobuf::internal::FromIntSize(this_._internal_id().size());
      for (int i = 0, n = this_._internal_id().size(); i < n; ++i) {
        total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
            this_._internal_id().Get(i));
      }
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

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

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_internal_mutable_id()->InternalMergeFromWithArena(
        ::google::protobuf::MessageLite::internal_visibility(), arena,
        from._internal_id());
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

// @@protoc_insertion_point(namespace_scope)
}  // namespace mcs_proto
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google
// @@protoc_insertion_point(global_scope)
#include "google/protobuf/port_undef.inc"
