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

#include "sharing_message.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 components_sharing_message {
class WebRtcSignalingMessage::_Internal {
 public:
  using HasBits = decltype(::std::declval<WebRtcSignalingMessage>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessage, _impl_._has_bits_);
};

constexpr WebRtcSignalingMessage::ParseTableT_ WebRtcSignalingMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessage, _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<::components_sharing_message::WebRtcSignalingMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // bytes web_rtc_signaling_frame = 1;
      {::_pbi::TcParser::FastBS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessage, _impl_.web_rtc_signaling_frame_)}},
    }}, {{
      65535, 65535
    }}, {{
      // bytes web_rtc_signaling_frame = 1;
      {PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessage, _impl_.web_rtc_signaling_frame_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr WebRtcSignalingMessage::WebRtcSignalingMessage(::_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 WebRtcSignalingMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) WebRtcSignalingMessage(arena);
}
constexpr auto WebRtcSignalingMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(WebRtcSignalingMessage), alignof(WebRtcSignalingMessage));
}
constexpr auto WebRtcSignalingMessage::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
          &WebRtcSignalingMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<WebRtcSignalingMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &WebRtcSignalingMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<WebRtcSignalingMessage>(), &WebRtcSignalingMessage::ByteSizeLong,
              &WebRtcSignalingMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.WebRtcSignalingMessage",
  };
}
struct WebRtcSignalingMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr WebRtcSignalingMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 WebRtcSignalingMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(WebRtcSignalingMessage::InternalGenerateClassData_(
            _default, &WebRtcSignalingMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<WebRtcSignalingMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~WebRtcSignalingMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) WebRtcSignalingMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<WebRtcSignalingMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(WebRtcSignalingMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr ServerChannelConfiguration::ParseTableT_ ServerChannelConfiguration::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_._has_bits_),
      0, // no _extensions_
      5, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967267,  // 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<::components_sharing_message::ServerChannelConfiguration>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // bytes p256dh = 4;
      {::_pbi::TcParser::FastBS1,
       {34, 1, 0,
        PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.p256dh_)}},
      // bytes auth_secret = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 2, 0,
        PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.auth_secret_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // bytes configuration = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 0, 0,
        PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.configuration_)}},
    }}, {{
      65535, 65535
    }}, {{
      // bytes configuration = 3;
      {PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.configuration_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // bytes p256dh = 4;
      {PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.p256dh_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // bytes auth_secret = 5;
      {PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_.auth_secret_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr ServerChannelConfiguration::ServerChannelConfiguration(::_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 ServerChannelConfiguration::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) ServerChannelConfiguration(arena);
}
constexpr auto ServerChannelConfiguration::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(ServerChannelConfiguration), alignof(ServerChannelConfiguration));
}
constexpr auto ServerChannelConfiguration::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
          &ServerChannelConfiguration::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<ServerChannelConfiguration>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &ServerChannelConfiguration::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<ServerChannelConfiguration>(), &ServerChannelConfiguration::ByteSizeLong,
              &ServerChannelConfiguration::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(ServerChannelConfiguration, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.ServerChannelConfiguration",
  };
}
struct ServerChannelConfigurationGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr ServerChannelConfigurationGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 ServerChannelConfiguration_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(ServerChannelConfiguration::InternalGenerateClassData_(
            _default, &ServerChannelConfiguration_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<ServerChannelConfiguration>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~ServerChannelConfigurationGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) ServerChannelConfiguration _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<ServerChannelConfiguration>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(ServerChannelConfigurationGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST ServerChannelConfigurationGlobalsTypeInternal ServerChannelConfiguration_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* ServerChannelConfiguration_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return ServerChannelConfiguration_globals_.GetClassData();
#else
  return ServerChannelConfiguration_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class PingMessage::_Internal {
 public:
};

constexpr PingMessage::ParseTableT_ PingMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(PingMessage,
                            _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<::components_sharing_message::PingMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, // no field_entries, or aux_entries
    {{
    }},
  };
}


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

template <typename>
constexpr PingMessage::PingMessage(::_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 PingMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) PingMessage(arena);
}
constexpr auto PingMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(PingMessage), alignof(PingMessage));
}
constexpr auto PingMessage::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
          &PingMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<PingMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &PingMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<PingMessage>(), &PingMessage::ByteSizeLong,
              &PingMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(PingMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.PingMessage",
  };
}
struct PingMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr PingMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 PingMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(PingMessage::InternalGenerateClassData_(
            _default, &PingMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<PingMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~PingMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) PingMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<PingMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(PingMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr FCMChannelConfiguration::ParseTableT_ FCMChannelConfiguration::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_._has_bits_),
      0, // no _extensions_
      6, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967239,  // 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<::components_sharing_message::FCMChannelConfiguration>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string sender_id_fcm_token = 4;
      {::_pbi::TcParser::FastUS1,
       {34, 0, 0,
        PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_fcm_token_)}},
      // bytes sender_id_p256dh = 5;
      {::_pbi::TcParser::FastBS1,
       {42, 1, 0,
        PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_p256dh_)}},
      // bytes sender_id_auth_secret = 6;
      {::_pbi::TcParser::FastBS1,
       {50, 2, 0,
        PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_auth_secret_)}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // string sender_id_fcm_token = 4;
      {PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_fcm_token_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bytes sender_id_p256dh = 5;
      {PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_p256dh_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
      // bytes sender_id_auth_secret = 6;
      {PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_.sender_id_auth_secret_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\62\23\0\0\0\0\0\0"
      "components_sharing_message.FCMChannelConfiguration"
      "sender_id_fcm_token"
    }},
  };
}


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

template <typename>
constexpr FCMChannelConfiguration::FCMChannelConfiguration(::_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 FCMChannelConfiguration::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) FCMChannelConfiguration(arena);
}
constexpr auto FCMChannelConfiguration::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(FCMChannelConfiguration), alignof(FCMChannelConfiguration));
}
constexpr auto FCMChannelConfiguration::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
          &FCMChannelConfiguration::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<FCMChannelConfiguration>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &FCMChannelConfiguration::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<FCMChannelConfiguration>(), &FCMChannelConfiguration::ByteSizeLong,
              &FCMChannelConfiguration::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(FCMChannelConfiguration, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.FCMChannelConfiguration",
  };
}
struct FCMChannelConfigurationGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr FCMChannelConfigurationGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 FCMChannelConfiguration_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(FCMChannelConfiguration::InternalGenerateClassData_(
            _default, &FCMChannelConfiguration_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<FCMChannelConfiguration>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~FCMChannelConfigurationGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) FCMChannelConfiguration _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<FCMChannelConfiguration>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(FCMChannelConfigurationGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr DiscoveryResponse::ParseTableT_ DiscoveryResponse::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _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<::components_sharing_message::DiscoveryResponse>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string service_id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.service_id_)}},
      // string endpoint_id = 2;
      {::_pbi::TcParser::FastUS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.endpoint_id_)}},
      // bytes endpoint_info = 3;
      {::_pbi::TcParser::FastBS1,
       {26, 2, 0,
        PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.endpoint_info_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string service_id = 1;
      {PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.service_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // string endpoint_id = 2;
      {PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.endpoint_id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // bytes endpoint_info = 3;
      {PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_.endpoint_info_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\54\12\13\0\0\0\0\0"
      "components_sharing_message.DiscoveryResponse"
      "service_id"
      "endpoint_id"
    }},
  };
}


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

template <typename>
constexpr DiscoveryResponse::DiscoveryResponse(::_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 DiscoveryResponse::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) DiscoveryResponse(arena);
}
constexpr auto DiscoveryResponse::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(DiscoveryResponse), alignof(DiscoveryResponse));
}
constexpr auto DiscoveryResponse::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
          &DiscoveryResponse::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<DiscoveryResponse>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &DiscoveryResponse::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<DiscoveryResponse>(), &DiscoveryResponse::ByteSizeLong,
              &DiscoveryResponse::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(DiscoveryResponse, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.DiscoveryResponse",
  };
}
struct DiscoveryResponseGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr DiscoveryResponseGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 DiscoveryResponse_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(DiscoveryResponse::InternalGenerateClassData_(
            _default, &DiscoveryResponse_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<DiscoveryResponse>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~DiscoveryResponseGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) DiscoveryResponse _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<DiscoveryResponse>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(DiscoveryResponseGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr DiscoveryRequest::ParseTableT_ DiscoveryRequest::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(DiscoveryRequest, _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<::components_sharing_message::DiscoveryRequest>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // string service_id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(DiscoveryRequest, _impl_.service_id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string service_id = 1;
      {PROTOBUF_FIELD_OFFSET(DiscoveryRequest, _impl_.service_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
    }},
    // no aux_entries
    {{
      "\53\12\0\0\0\0\0\0"
      "components_sharing_message.DiscoveryRequest"
      "service_id"
    }},
  };
}


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

template <typename>
constexpr DiscoveryRequest::DiscoveryRequest(::_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 DiscoveryRequest::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) DiscoveryRequest(arena);
}
constexpr auto DiscoveryRequest::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(DiscoveryRequest), alignof(DiscoveryRequest));
}
constexpr auto DiscoveryRequest::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
          &DiscoveryRequest::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<DiscoveryRequest>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &DiscoveryRequest::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<DiscoveryRequest>(), &DiscoveryRequest::ByteSizeLong,
              &DiscoveryRequest::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(DiscoveryRequest, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.DiscoveryRequest",
  };
}
struct DiscoveryRequestGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr DiscoveryRequestGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 DiscoveryRequest_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(DiscoveryRequest::InternalGenerateClassData_(
            _default, &DiscoveryRequest_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<DiscoveryRequest>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~DiscoveryRequestGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) DiscoveryRequest _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<DiscoveryRequest>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(DiscoveryRequestGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST DiscoveryRequestGlobalsTypeInternal DiscoveryRequest_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* DiscoveryRequest_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return DiscoveryRequest_globals_.GetClassData();
#else
  return DiscoveryRequest_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class ResponseMessage::_Internal {
 public:
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::components_sharing_message::ResponseMessage, _impl_._oneof_case_);
};

constexpr ResponseMessage::ParseTableT_ ResponseMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(ResponseMessage,
                            _impl_._cached_size_),  // no hasbits
      0, // no _extensions_
      4, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967280,  // skipmap
      offsetof(ParseTableT_, field_entries),
      4,  // 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<::components_sharing_message::ResponseMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // .components_sharing_message.SmsFetchResponse sms_fetch_response = 1;
      {PROTOBUF_FIELD_OFFSET(ResponseMessage, _impl_.payload_.sms_fetch_response_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.PeerConnectionAnswerMessage peer_connection_answer_message_response = 2;
      {PROTOBUF_FIELD_OFFSET(ResponseMessage, _impl_.payload_.peer_connection_answer_message_response_), _Internal::kOneofCaseOffset + 0, 1, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.DiscoveryResponse discovery_response = 3;
      {PROTOBUF_FIELD_OFFSET(ResponseMessage, _impl_.payload_.discovery_response_), _Internal::kOneofCaseOffset + 0, 2, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.GlicExperimentalTriggering glic_experimental_triggering = 4;
      {PROTOBUF_FIELD_OFFSET(ResponseMessage, _impl_.payload_.glic_experimental_triggering_), _Internal::kOneofCaseOffset + 0, 3, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::SmsFetchResponse>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::SmsFetchResponse_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::PeerConnectionAnswerMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::PeerConnectionAnswerMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::DiscoveryResponse>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::DiscoveryResponse_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::GlicExperimentalTriggering>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::GlicExperimentalTriggering_globals_},
        #endif
    }},
    {{
    }},
  };
}


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

template <typename>
constexpr ResponseMessage::ResponseMessage(::_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 ResponseMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) ResponseMessage(arena);
}
constexpr auto ResponseMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(ResponseMessage), alignof(ResponseMessage));
}
constexpr auto ResponseMessage::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
          &ResponseMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<ResponseMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &ResponseMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<ResponseMessage>(), &ResponseMessage::ByteSizeLong,
              &ResponseMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(ResponseMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.ResponseMessage",
  };
}
struct ResponseMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr ResponseMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 ResponseMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(ResponseMessage::InternalGenerateClassData_(
            _default, &ResponseMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<ResponseMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~ResponseMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) ResponseMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<ResponseMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(ResponseMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr AckMessage::ParseTableT_ AckMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(AckMessage, _impl_._has_bits_),
      0, // no _extensions_
      3, 24,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967290,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // 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<::components_sharing_message::AckMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string original_message_id = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(AckMessage, _impl_.original_message_id_)}},
      {::_pbi::TcParser::MiniParse, {}},
      // .components_sharing_message.ResponseMessage response_message = 3;
      {::_pbi::TcParser::FastMtS1,
       {26, 1, 0,
        PROTOBUF_FIELD_OFFSET(AckMessage, _impl_.response_message_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string original_message_id = 1;
      {PROTOBUF_FIELD_OFFSET(AckMessage, _impl_.original_message_id_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .components_sharing_message.ResponseMessage response_message = 3;
      {PROTOBUF_FIELD_OFFSET(AckMessage, _impl_.response_message_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::ResponseMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::ResponseMessage_globals_},
        #endif
    }},
    {{
      "\45\23\0\0\0\0\0\0"
      "components_sharing_message.AckMessage"
      "original_message_id"
    }},
  };
}


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

template <typename>
constexpr AckMessage::AckMessage(::_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 AckMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) AckMessage(arena);
}
constexpr auto AckMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(AckMessage), alignof(AckMessage));
}
constexpr auto AckMessage::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
          &AckMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<AckMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &AckMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<AckMessage>(), &AckMessage::ByteSizeLong,
              &AckMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(AckMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.AckMessage",
  };
}
struct AckMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr AckMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 AckMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(AckMessage::InternalGenerateClassData_(
            _default, &AckMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<AckMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~AckMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) AckMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<AckMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(AckMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr SharingMessage::ParseTableT_ SharingMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_._has_bits_),
      0, // no _extensions_
      18, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294705176,  // skipmap
      offsetof(ParseTableT_, field_entries),
      16,  // num_field_entries
      13,  // 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<::components_sharing_message::SharingMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // string sender_guid = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.sender_guid_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // string sender_device_name = 7;
      {::_pbi::TcParser::FastUS1,
       {58, 1, 0,
        PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.sender_device_name_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // string message_id = 15;
      {::_pbi::TcParser::FastUS1,
       {122, 2, 0,
        PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.message_id_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string sender_guid = 1;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.sender_guid_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .components_sharing_message.PingMessage ping_message = 2;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.ping_message_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.AckMessage ack_message = 3;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.ack_message_), _Internal::kOneofCaseOffset + 0, 1, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.FCMChannelConfiguration fcm_channel_configuration = 6;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.ack_channel_configuration_.fcm_channel_configuration_), _Internal::kOneofCaseOffset + 4, 2, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // string sender_device_name = 7;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.sender_device_name_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .components_sharing_message.SmsFetchRequest sms_fetch_request = 8;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.sms_fetch_request_), _Internal::kOneofCaseOffset + 0, 3, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.RemoteCopyMessage remote_copy_message = 9;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.remote_copy_message_), _Internal::kOneofCaseOffset + 0, 4, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.PeerConnectionOfferMessage peer_connection_offer_message = 10;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.peer_connection_offer_message_), _Internal::kOneofCaseOffset + 0, 5, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.PeerConnectionIceCandidatesMessage peer_connection_ice_candidates_message = 11;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.peer_connection_ice_candidates_message_), _Internal::kOneofCaseOffset + 0, 6, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.ServerChannelConfiguration server_channel_configuration = 12;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.ack_channel_configuration_.server_channel_configuration_), _Internal::kOneofCaseOffset + 4, 7, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.DiscoveryRequest discovery_request = 13;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.discovery_request_), _Internal::kOneofCaseOffset + 0, 8, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.WebRtcSignalingMessage web_rtc_signaling_frame = 14;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.web_rtc_signaling_frame_), _Internal::kOneofCaseOffset + 0, 9, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // string message_id = 15;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.message_id_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .components_sharing_message.OptimizationGuidePushNotification optimization_guide_push_notification = 16;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.optimization_guide_push_notification_), _Internal::kOneofCaseOffset + 0, 10, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.OneTimeTokenBackendNotification one_time_token_backend_notification = 17;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.one_time_token_backend_notification_), _Internal::kOneofCaseOffset + 0, 11, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // .components_sharing_message.GlicExperimentalTriggering glic_experimental_triggering = 18;
      {PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_.payload_.glic_experimental_triggering_), _Internal::kOneofCaseOffset + 0, 12, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::PingMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::PingMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::AckMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::AckMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::FCMChannelConfiguration>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::FCMChannelConfiguration_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::SmsFetchRequest>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::SmsFetchRequest_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::RemoteCopyMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::RemoteCopyMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::PeerConnectionOfferMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::PeerConnectionOfferMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::PeerConnectionIceCandidatesMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::PeerConnectionIceCandidatesMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::ServerChannelConfiguration>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::ServerChannelConfiguration_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::DiscoveryRequest>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::DiscoveryRequest_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::WebRtcSignalingMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::WebRtcSignalingMessage_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::OptimizationGuidePushNotification>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::OptimizationGuidePushNotification_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::OneTimeTokenBackendNotification>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::OneTimeTokenBackendNotification_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::GlicExperimentalTriggering>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::GlicExperimentalTriggering_globals_},
        #endif
    }},
    {{
      "\51\13\0\0\0\22\0\0\0\0\0\0\0\12\0\0\0\0\0\0\0\0\0\0"
      "components_sharing_message.SharingMessage"
      "sender_guid"
      "sender_device_name"
      "message_id"
    }},
  };
}


inline constexpr SharingMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        sender_guid_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        sender_device_name_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        message_id_(
            &::google::protobuf::internal::fixed_address_empty_string,
            ::_pbi::ConstantInitialized()),
        payload_{},
        ack_channel_configuration_{},
        _oneof_case_{} {}

template <typename>
constexpr SharingMessage::SharingMessage(::_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 SharingMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) SharingMessage(arena);
}
constexpr auto SharingMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SharingMessage), alignof(SharingMessage));
}
constexpr auto SharingMessage::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
          &SharingMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<SharingMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &SharingMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<SharingMessage>(), &SharingMessage::ByteSizeLong,
              &SharingMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(SharingMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.SharingMessage",
  };
}
struct SharingMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr SharingMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 SharingMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(SharingMessage::InternalGenerateClassData_(
            _default, &SharingMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<SharingMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~SharingMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) SharingMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<SharingMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(SharingMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

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

constexpr WebRtcMessage::ParseTableT_ WebRtcMessage::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(WebRtcMessage, _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
      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<::components_sharing_message::WebRtcMessage>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // .components_sharing_message.SharingMessage message = 2;
      {::_pbi::TcParser::FastMtS1,
       {18, 1, 0,
        PROTOBUF_FIELD_OFFSET(WebRtcMessage, _impl_.message_)}},
      // string message_guid = 1;
      {::_pbi::TcParser::FastUS1,
       {10, 0, 0,
        PROTOBUF_FIELD_OFFSET(WebRtcMessage, _impl_.message_guid_)}},
    }}, {{
      65535, 65535
    }}, {{
      // string message_guid = 1;
      {PROTOBUF_FIELD_OFFSET(WebRtcMessage, _impl_.message_guid_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
      // .components_sharing_message.SharingMessage message = 2;
      {PROTOBUF_FIELD_OFFSET(WebRtcMessage, _impl_.message_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::components_sharing_message::SharingMessage>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::components_sharing_message::SharingMessage_globals_},
        #endif
    }},
    {{
      "\50\14\0\0\0\0\0\0"
      "components_sharing_message.WebRtcMessage"
      "message_guid"
    }},
  };
}


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

template <typename>
constexpr WebRtcMessage::WebRtcMessage(::_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 WebRtcMessage::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) WebRtcMessage(arena);
}
constexpr auto WebRtcMessage::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(WebRtcMessage), alignof(WebRtcMessage));
}
constexpr auto WebRtcMessage::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
          &WebRtcMessage::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<WebRtcMessage>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &WebRtcMessage::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<WebRtcMessage>(), &WebRtcMessage::ByteSizeLong,
              &WebRtcMessage::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(WebRtcMessage, _impl_._cached_size_),
          true,
      },
      "components_sharing_message.WebRtcMessage",
  };
}
struct WebRtcMessageGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr WebRtcMessageGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 WebRtcMessage_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(WebRtcMessage::InternalGenerateClassData_(
            _default, &WebRtcMessage_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<WebRtcMessage>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~WebRtcMessageGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) WebRtcMessage _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<WebRtcMessage>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(WebRtcMessageGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST WebRtcMessageGlobalsTypeInternal WebRtcMessage_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* WebRtcMessage_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return WebRtcMessage_globals_.GetClassData();
#else
  return WebRtcMessage_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
}  // namespace components_sharing_message
namespace components_sharing_message {
// ===================================================================

void SharingMessage::set_allocated_ping_message(::components_sharing_message::PingMessage* PROTOBUF_NULLABLE ping_message) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (ping_message) {
    ::google::protobuf::Arena* submessage_arena = ping_message->GetArena();
    if (message_arena != submessage_arena) {
      ping_message = ::google::protobuf::internal::GetOwnedMessage(message_arena, ping_message, submessage_arena);
    }
    set_has_ping_message();
    _impl_.payload_.ping_message_ = ping_message;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.ping_message)
}
void SharingMessage::set_allocated_ack_message(::components_sharing_message::AckMessage* PROTOBUF_NULLABLE ack_message) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (ack_message) {
    ::google::protobuf::Arena* submessage_arena = ack_message->GetArena();
    if (message_arena != submessage_arena) {
      ack_message = ::google::protobuf::internal::GetOwnedMessage(message_arena, ack_message, submessage_arena);
    }
    set_has_ack_message();
    _impl_.payload_.ack_message_ = ack_message;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.ack_message)
}
void SharingMessage::set_allocated_sms_fetch_request(::components_sharing_message::SmsFetchRequest* PROTOBUF_NULLABLE sms_fetch_request) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (sms_fetch_request) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(sms_fetch_request)->GetArena();
    if (message_arena != submessage_arena) {
      sms_fetch_request = ::google::protobuf::internal::GetOwnedMessage(message_arena, sms_fetch_request, submessage_arena);
    }
    set_has_sms_fetch_request();
    _impl_.payload_.sms_fetch_request_ = sms_fetch_request;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.sms_fetch_request)
}
void SharingMessage::clear_sms_fetch_request() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kSmsFetchRequest) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.sms_fetch_request_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.sms_fetch_request_ != nullptr) {
        _impl_.payload_.sms_fetch_request_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_remote_copy_message(::components_sharing_message::RemoteCopyMessage* PROTOBUF_NULLABLE remote_copy_message) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (remote_copy_message) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(remote_copy_message)->GetArena();
    if (message_arena != submessage_arena) {
      remote_copy_message = ::google::protobuf::internal::GetOwnedMessage(message_arena, remote_copy_message, submessage_arena);
    }
    set_has_remote_copy_message();
    _impl_.payload_.remote_copy_message_ = remote_copy_message;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.remote_copy_message)
}
void SharingMessage::clear_remote_copy_message() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kRemoteCopyMessage) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.remote_copy_message_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.remote_copy_message_ != nullptr) {
        _impl_.payload_.remote_copy_message_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_peer_connection_offer_message(::components_sharing_message::PeerConnectionOfferMessage* PROTOBUF_NULLABLE peer_connection_offer_message) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (peer_connection_offer_message) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(peer_connection_offer_message)->GetArena();
    if (message_arena != submessage_arena) {
      peer_connection_offer_message = ::google::protobuf::internal::GetOwnedMessage(message_arena, peer_connection_offer_message, submessage_arena);
    }
    set_has_peer_connection_offer_message();
    _impl_.payload_.peer_connection_offer_message_ = peer_connection_offer_message;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.peer_connection_offer_message)
}
void SharingMessage::clear_peer_connection_offer_message() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kPeerConnectionOfferMessage) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.peer_connection_offer_message_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.peer_connection_offer_message_ != nullptr) {
        _impl_.payload_.peer_connection_offer_message_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_peer_connection_ice_candidates_message(::components_sharing_message::PeerConnectionIceCandidatesMessage* PROTOBUF_NULLABLE peer_connection_ice_candidates_message) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (peer_connection_ice_candidates_message) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(peer_connection_ice_candidates_message)->GetArena();
    if (message_arena != submessage_arena) {
      peer_connection_ice_candidates_message = ::google::protobuf::internal::GetOwnedMessage(message_arena, peer_connection_ice_candidates_message, submessage_arena);
    }
    set_has_peer_connection_ice_candidates_message();
    _impl_.payload_.peer_connection_ice_candidates_message_ = peer_connection_ice_candidates_message;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.peer_connection_ice_candidates_message)
}
void SharingMessage::clear_peer_connection_ice_candidates_message() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kPeerConnectionIceCandidatesMessage) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.peer_connection_ice_candidates_message_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.peer_connection_ice_candidates_message_ != nullptr) {
        _impl_.payload_.peer_connection_ice_candidates_message_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_discovery_request(::components_sharing_message::DiscoveryRequest* PROTOBUF_NULLABLE discovery_request) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (discovery_request) {
    ::google::protobuf::Arena* submessage_arena = discovery_request->GetArena();
    if (message_arena != submessage_arena) {
      discovery_request = ::google::protobuf::internal::GetOwnedMessage(message_arena, discovery_request, submessage_arena);
    }
    set_has_discovery_request();
    _impl_.payload_.discovery_request_ = discovery_request;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.discovery_request)
}
void SharingMessage::set_allocated_web_rtc_signaling_frame(::components_sharing_message::WebRtcSignalingMessage* PROTOBUF_NULLABLE web_rtc_signaling_frame) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (web_rtc_signaling_frame) {
    ::google::protobuf::Arena* submessage_arena = web_rtc_signaling_frame->GetArena();
    if (message_arena != submessage_arena) {
      web_rtc_signaling_frame = ::google::protobuf::internal::GetOwnedMessage(message_arena, web_rtc_signaling_frame, submessage_arena);
    }
    set_has_web_rtc_signaling_frame();
    _impl_.payload_.web_rtc_signaling_frame_ = web_rtc_signaling_frame;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.web_rtc_signaling_frame)
}
void SharingMessage::set_allocated_optimization_guide_push_notification(::components_sharing_message::OptimizationGuidePushNotification* PROTOBUF_NULLABLE optimization_guide_push_notification) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (optimization_guide_push_notification) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(optimization_guide_push_notification)->GetArena();
    if (message_arena != submessage_arena) {
      optimization_guide_push_notification = ::google::protobuf::internal::GetOwnedMessage(message_arena, optimization_guide_push_notification, submessage_arena);
    }
    set_has_optimization_guide_push_notification();
    _impl_.payload_.optimization_guide_push_notification_ = optimization_guide_push_notification;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.optimization_guide_push_notification)
}
void SharingMessage::clear_optimization_guide_push_notification() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kOptimizationGuidePushNotification) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.optimization_guide_push_notification_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.optimization_guide_push_notification_ != nullptr) {
        _impl_.payload_.optimization_guide_push_notification_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_one_time_token_backend_notification(::components_sharing_message::OneTimeTokenBackendNotification* PROTOBUF_NULLABLE one_time_token_backend_notification) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (one_time_token_backend_notification) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(one_time_token_backend_notification)->GetArena();
    if (message_arena != submessage_arena) {
      one_time_token_backend_notification = ::google::protobuf::internal::GetOwnedMessage(message_arena, one_time_token_backend_notification, submessage_arena);
    }
    set_has_one_time_token_backend_notification();
    _impl_.payload_.one_time_token_backend_notification_ = one_time_token_backend_notification;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.one_time_token_backend_notification)
}
void SharingMessage::clear_one_time_token_backend_notification() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kOneTimeTokenBackendNotification) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.one_time_token_backend_notification_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.one_time_token_backend_notification_ != nullptr) {
        _impl_.payload_.one_time_token_backend_notification_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_glic_experimental_triggering(::components_sharing_message::GlicExperimentalTriggering* PROTOBUF_NULLABLE glic_experimental_triggering) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (glic_experimental_triggering) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(glic_experimental_triggering)->GetArena();
    if (message_arena != submessage_arena) {
      glic_experimental_triggering = ::google::protobuf::internal::GetOwnedMessage(message_arena, glic_experimental_triggering, submessage_arena);
    }
    set_has_glic_experimental_triggering();
    _impl_.payload_.glic_experimental_triggering_ = glic_experimental_triggering;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.glic_experimental_triggering)
}
void SharingMessage::clear_glic_experimental_triggering() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kGlicExperimentalTriggering) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.glic_experimental_triggering_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.glic_experimental_triggering_ != nullptr) {
        _impl_.payload_.glic_experimental_triggering_->Clear();
      }
    }
    clear_has_payload();
  }
}
void SharingMessage::set_allocated_fcm_channel_configuration(::components_sharing_message::FCMChannelConfiguration* PROTOBUF_NULLABLE fcm_channel_configuration) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_ack_channel_configuration();
  if (fcm_channel_configuration) {
    ::google::protobuf::Arena* submessage_arena = fcm_channel_configuration->GetArena();
    if (message_arena != submessage_arena) {
      fcm_channel_configuration = ::google::protobuf::internal::GetOwnedMessage(message_arena, fcm_channel_configuration, submessage_arena);
    }
    set_has_fcm_channel_configuration();
    _impl_.ack_channel_configuration_.fcm_channel_configuration_ = fcm_channel_configuration;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.fcm_channel_configuration)
}
void SharingMessage::set_allocated_server_channel_configuration(::components_sharing_message::ServerChannelConfiguration* PROTOBUF_NULLABLE server_channel_configuration) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_ack_channel_configuration();
  if (server_channel_configuration) {
    ::google::protobuf::Arena* submessage_arena = server_channel_configuration->GetArena();
    if (message_arena != submessage_arena) {
      server_channel_configuration = ::google::protobuf::internal::GetOwnedMessage(message_arena, server_channel_configuration, submessage_arena);
    }
    set_has_server_channel_configuration();
    _impl_.ack_channel_configuration_.server_channel_configuration_ = server_channel_configuration;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.SharingMessage.server_channel_configuration)
}
SharingMessage::SharingMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, SharingMessage_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:components_sharing_message.SharingMessage)
}
PROTOBUF_NDEBUG_INLINE SharingMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::components_sharing_message::SharingMessage& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        sender_guid_(arena, from.sender_guid_),
        sender_device_name_(arena, from.sender_device_name_),
        message_id_(arena, from.message_id_),
        payload_{},
        ack_channel_configuration_{},
        _oneof_case_{from._oneof_case_[0], from._oneof_case_[1]} {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharingMessage* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  switch (payload_case()) {
    case PAYLOAD_NOT_SET:
      break;
      case kPingMessage:
        _impl_.payload_.ping_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.ping_message_);
        break;
      case kAckMessage:
        _impl_.payload_.ack_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.ack_message_);
        break;
      case kSmsFetchRequest:
        _impl_.payload_.sms_fetch_request_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.sms_fetch_request_);
        break;
      case kRemoteCopyMessage:
        _impl_.payload_.remote_copy_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.remote_copy_message_);
        break;
      case kPeerConnectionOfferMessage:
        _impl_.payload_.peer_connection_offer_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_offer_message_);
        break;
      case kPeerConnectionIceCandidatesMessage:
        _impl_.payload_.peer_connection_ice_candidates_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_ice_candidates_message_);
        break;
      case kDiscoveryRequest:
        _impl_.payload_.discovery_request_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.discovery_request_);
        break;
      case kWebRtcSignalingFrame:
        _impl_.payload_.web_rtc_signaling_frame_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.web_rtc_signaling_frame_);
        break;
      case kOptimizationGuidePushNotification:
        _impl_.payload_.optimization_guide_push_notification_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.optimization_guide_push_notification_);
        break;
      case kOneTimeTokenBackendNotification:
        _impl_.payload_.one_time_token_backend_notification_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.one_time_token_backend_notification_);
        break;
      case kGlicExperimentalTriggering:
        _impl_.payload_.glic_experimental_triggering_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.glic_experimental_triggering_);
        break;
  }
  switch (ack_channel_configuration_case()) {
    case ACK_CHANNEL_CONFIGURATION_NOT_SET:
      break;
      case kFcmChannelConfiguration:
        _impl_.ack_channel_configuration_.fcm_channel_configuration_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.ack_channel_configuration_.fcm_channel_configuration_);
        break;
      case kServerChannelConfiguration:
        _impl_.ack_channel_configuration_.server_channel_configuration_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.ack_channel_configuration_.server_channel_configuration_);
        break;
  }

  // @@protoc_insertion_point(copy_constructor:components_sharing_message.SharingMessage)
}
PROTOBUF_NDEBUG_INLINE SharingMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        sender_guid_(arena),
        sender_device_name_(arena),
        message_id_(arena),
        payload_{},
        ack_channel_configuration_{},
        _oneof_case_{} {}

inline void SharingMessage::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
SharingMessage::~SharingMessage() {
  // @@protoc_insertion_point(destructor:components_sharing_message.SharingMessage)
  SharedDtor(*this);
}
inline void SharingMessage::SharedDtor(MessageLite& self) {
  SharingMessage& this_ = static_cast<SharingMessage&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.sender_guid_.Destroy();
  this_._impl_.sender_device_name_.Destroy();
  this_._impl_.message_id_.Destroy();
  if (this_.has_payload()) {
    this_.clear_payload();
  }
  if (this_.has_ack_channel_configuration()) {
    this_.clear_ack_channel_configuration();
  }
  this_._impl_.~Impl_();
}

void SharingMessage::clear_payload() {
// @@protoc_insertion_point(one_of_clear_start:components_sharing_message.SharingMessage)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (payload_case()) {
    case kPingMessage: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.ping_message_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.ping_message_ != nullptr) {
          _impl_.payload_.ping_message_->Clear();
        }
      }
      break;
    }
    case kAckMessage: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.ack_message_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.ack_message_ != nullptr) {
          _impl_.payload_.ack_message_->Clear();
        }
      }
      break;
    }
    case kSmsFetchRequest: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.sms_fetch_request_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.sms_fetch_request_ != nullptr) {
          _impl_.payload_.sms_fetch_request_->Clear();
        }
      }
      break;
    }
    case kRemoteCopyMessage: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.remote_copy_message_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.remote_copy_message_ != nullptr) {
          _impl_.payload_.remote_copy_message_->Clear();
        }
      }
      break;
    }
    case kPeerConnectionOfferMessage: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.peer_connection_offer_message_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.peer_connection_offer_message_ != nullptr) {
          _impl_.payload_.peer_connection_offer_message_->Clear();
        }
      }
      break;
    }
    case kPeerConnectionIceCandidatesMessage: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.peer_connection_ice_candidates_message_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.peer_connection_ice_candidates_message_ != nullptr) {
          _impl_.payload_.peer_connection_ice_candidates_message_->Clear();
        }
      }
      break;
    }
    case kDiscoveryRequest: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.discovery_request_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.discovery_request_ != nullptr) {
          _impl_.payload_.discovery_request_->Clear();
        }
      }
      break;
    }
    case kWebRtcSignalingFrame: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.web_rtc_signaling_frame_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.web_rtc_signaling_frame_ != nullptr) {
          _impl_.payload_.web_rtc_signaling_frame_->Clear();
        }
      }
      break;
    }
    case kOptimizationGuidePushNotification: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.optimization_guide_push_notification_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.optimization_guide_push_notification_ != nullptr) {
          _impl_.payload_.optimization_guide_push_notification_->Clear();
        }
      }
      break;
    }
    case kOneTimeTokenBackendNotification: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.one_time_token_backend_notification_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.one_time_token_backend_notification_ != nullptr) {
          _impl_.payload_.one_time_token_backend_notification_->Clear();
        }
      }
      break;
    }
    case kGlicExperimentalTriggering: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.glic_experimental_triggering_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.glic_experimental_triggering_ != nullptr) {
          _impl_.payload_.glic_experimental_triggering_->Clear();
        }
      }
      break;
    }
    case PAYLOAD_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = PAYLOAD_NOT_SET;
}

void SharingMessage::clear_ack_channel_configuration() {
// @@protoc_insertion_point(one_of_clear_start:components_sharing_message.SharingMessage)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (ack_channel_configuration_case()) {
    case kFcmChannelConfiguration: {
      if (GetArena() == nullptr) {
        delete _impl_.ack_channel_configuration_.fcm_channel_configuration_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.ack_channel_configuration_.fcm_channel_configuration_ != nullptr) {
          _impl_.ack_channel_configuration_.fcm_channel_configuration_->Clear();
        }
      }
      break;
    }
    case kServerChannelConfiguration: {
      if (GetArena() == nullptr) {
        delete _impl_.ack_channel_configuration_.server_channel_configuration_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.ack_channel_configuration_.server_channel_configuration_ != nullptr) {
          _impl_.ack_channel_configuration_.server_channel_configuration_->Clear();
        }
      }
      break;
    }
    case ACK_CHANNEL_CONFIGURATION_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[1] = ACK_CHANNEL_CONFIGURATION_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite SharingMessage_class_data_ =
    SharingMessage::InternalGenerateClassData_(SharingMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SharingMessage::GetClassData() const {
  return SharingMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
SharingMessage::GetClassData() const {
  return SharingMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const SharingMessage::ParseTableT_
    SharingMessage::_table_ =
        SharingMessage::InternalGenerateParseTable_(SharingMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void SharingMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.SharingMessage)
  ::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_.sender_guid_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.sender_device_name_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.message_id_.ClearNonDefaultToEmpty();
    }
  }
  clear_payload();
  clear_ack_channel_configuration();
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string sender_guid = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_sender_guid().empty()) {
      const ::std::string& _s = this_._internal_sender_guid();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.SharingMessage.sender_guid");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  switch (this_.payload_case()) {
    case kPingMessage: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          2, *this_._impl_.payload_.ping_message_, this_._impl_.payload_.ping_message_->GetCachedSize(), target,
          stream);
      break;
    }
    case kAckMessage: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          3, *this_._impl_.payload_.ack_message_, this_._impl_.payload_.ack_message_->GetCachedSize(), target,
          stream);
      break;
    }
    default:
      break;
  }
  // .components_sharing_message.FCMChannelConfiguration fcm_channel_configuration = 6;
  if (this_.ack_channel_configuration_case() == kFcmChannelConfiguration) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.ack_channel_configuration_.fcm_channel_configuration_, this_._impl_.ack_channel_configuration_.fcm_channel_configuration_->GetCachedSize(), target,
        stream);
  }

  // string sender_device_name = 7;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_sender_device_name().empty()) {
      const ::std::string& _s = this_._internal_sender_device_name();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.SharingMessage.sender_device_name");
      target = stream->WriteStringMaybeAliased(7, _s, target);
    }
  }

  switch (this_.payload_case()) {
    case kSmsFetchRequest: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          8, *this_._impl_.payload_.sms_fetch_request_, this_._impl_.payload_.sms_fetch_request_->GetCachedSize(), target,
          stream);
      break;
    }
    case kRemoteCopyMessage: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          9, *this_._impl_.payload_.remote_copy_message_, this_._impl_.payload_.remote_copy_message_->GetCachedSize(), target,
          stream);
      break;
    }
    case kPeerConnectionOfferMessage: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          10, *this_._impl_.payload_.peer_connection_offer_message_, this_._impl_.payload_.peer_connection_offer_message_->GetCachedSize(), target,
          stream);
      break;
    }
    case kPeerConnectionIceCandidatesMessage: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          11, *this_._impl_.payload_.peer_connection_ice_candidates_message_, this_._impl_.payload_.peer_connection_ice_candidates_message_->GetCachedSize(), target,
          stream);
      break;
    }
    default:
      break;
  }
  // .components_sharing_message.ServerChannelConfiguration server_channel_configuration = 12;
  if (this_.ack_channel_configuration_case() == kServerChannelConfiguration) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        12, *this_._impl_.ack_channel_configuration_.server_channel_configuration_, this_._impl_.ack_channel_configuration_.server_channel_configuration_->GetCachedSize(), target,
        stream);
  }

  switch (this_.payload_case()) {
    case kDiscoveryRequest: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          13, *this_._impl_.payload_.discovery_request_, this_._impl_.payload_.discovery_request_->GetCachedSize(), target,
          stream);
      break;
    }
    case kWebRtcSignalingFrame: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          14, *this_._impl_.payload_.web_rtc_signaling_frame_, this_._impl_.payload_.web_rtc_signaling_frame_->GetCachedSize(), target,
          stream);
      break;
    }
    default:
      break;
  }
  // string message_id = 15;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_message_id().empty()) {
      const ::std::string& _s = this_._internal_message_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.SharingMessage.message_id");
      target = stream->WriteStringMaybeAliased(15, _s, target);
    }
  }

  switch (this_.payload_case()) {
    case kOptimizationGuidePushNotification: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          16, *this_._impl_.payload_.optimization_guide_push_notification_, this_._impl_.payload_.optimization_guide_push_notification_->GetCachedSize(), target,
          stream);
      break;
    }
    case kOneTimeTokenBackendNotification: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          17, *this_._impl_.payload_.one_time_token_backend_notification_, this_._impl_.payload_.one_time_token_backend_notification_->GetCachedSize(), target,
          stream);
      break;
    }
    case kGlicExperimentalTriggering: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          18, *this_._impl_.payload_.glic_experimental_triggering_, this_._impl_.payload_.glic_experimental_triggering_->GetCachedSize(), target,
          stream);
      break;
    }
    default:
      break;
  }
  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:components_sharing_message.SharingMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t SharingMessage::ByteSizeLong(const MessageLite& base) {
  const SharingMessage& this_ = static_cast<const SharingMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t SharingMessage::ByteSizeLong() const {
  const SharingMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.SharingMessage)
  ::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)) {
    // string sender_guid = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_sender_guid().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_sender_guid());
      }
    }
    // string sender_device_name = 7;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_sender_device_name().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_sender_device_name());
      }
    }
    // string message_id = 15;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_message_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_message_id());
      }
    }
  }
  switch (this_.payload_case()) {
    // .components_sharing_message.PingMessage ping_message = 2;
    case kPingMessage: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.ping_message_);
      break;
    }
    // .components_sharing_message.AckMessage ack_message = 3;
    case kAckMessage: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.ack_message_);
      break;
    }
    // .components_sharing_message.SmsFetchRequest sms_fetch_request = 8;
    case kSmsFetchRequest: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.sms_fetch_request_);
      break;
    }
    // .components_sharing_message.RemoteCopyMessage remote_copy_message = 9;
    case kRemoteCopyMessage: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.remote_copy_message_);
      break;
    }
    // .components_sharing_message.PeerConnectionOfferMessage peer_connection_offer_message = 10;
    case kPeerConnectionOfferMessage: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.peer_connection_offer_message_);
      break;
    }
    // .components_sharing_message.PeerConnectionIceCandidatesMessage peer_connection_ice_candidates_message = 11;
    case kPeerConnectionIceCandidatesMessage: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.peer_connection_ice_candidates_message_);
      break;
    }
    // .components_sharing_message.DiscoveryRequest discovery_request = 13;
    case kDiscoveryRequest: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.discovery_request_);
      break;
    }
    // .components_sharing_message.WebRtcSignalingMessage web_rtc_signaling_frame = 14;
    case kWebRtcSignalingFrame: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.web_rtc_signaling_frame_);
      break;
    }
    // .components_sharing_message.OptimizationGuidePushNotification optimization_guide_push_notification = 16;
    case kOptimizationGuidePushNotification: {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.optimization_guide_push_notification_);
      break;
    }
    // .components_sharing_message.OneTimeTokenBackendNotification one_time_token_backend_notification = 17;
    case kOneTimeTokenBackendNotification: {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.one_time_token_backend_notification_);
      break;
    }
    // .components_sharing_message.GlicExperimentalTriggering glic_experimental_triggering = 18;
    case kGlicExperimentalTriggering: {
      total_size += 2 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.glic_experimental_triggering_);
      break;
    }
    case PAYLOAD_NOT_SET: {
      break;
    }
  }
  switch (this_.ack_channel_configuration_case()) {
    // .components_sharing_message.FCMChannelConfiguration fcm_channel_configuration = 6;
    case kFcmChannelConfiguration: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.ack_channel_configuration_.fcm_channel_configuration_);
      break;
    }
    // .components_sharing_message.ServerChannelConfiguration server_channel_configuration = 12;
    case kServerChannelConfiguration: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.ack_channel_configuration_.server_channel_configuration_);
      break;
    }
    case ACK_CHANNEL_CONFIGURATION_NOT_SET: {
      break;
    }
  }
  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 SharingMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<SharingMessage*>(&to_msg);
  auto& from = static_cast<const SharingMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.SharingMessage)
  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)) {
      if (!from._internal_sender_guid().empty()) {
        _this->_internal_set_sender_guid(from._internal_sender_guid());
      } else {
        if (_this->_impl_.sender_guid_.IsDefault()) {
          _this->_internal_set_sender_guid("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_sender_device_name().empty()) {
        _this->_internal_set_sender_device_name(from._internal_sender_device_name());
      } else {
        if (_this->_impl_.sender_device_name_.IsDefault()) {
          _this->_internal_set_sender_device_name("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_message_id().empty()) {
        _this->_internal_set_message_id(from._internal_message_id());
      } else {
        if (_this->_impl_.message_id_.IsDefault()) {
          _this->_internal_set_message_id("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_payload();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kPingMessage: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.ping_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.ping_message_);
        } else {
          _this->_impl_.payload_.ping_message_->CheckTypeAndMergeFrom(*from._impl_.payload_.ping_message_);
        }
        break;
      }
      case kAckMessage: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.ack_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.ack_message_);
        } else {
          _this->_impl_.payload_.ack_message_->CheckTypeAndMergeFrom(*from._impl_.payload_.ack_message_);
        }
        break;
      }
      case kSmsFetchRequest: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.sms_fetch_request_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.sms_fetch_request_);
        } else {
          _this->_impl_.payload_.sms_fetch_request_->CheckTypeAndMergeFrom(*from._impl_.payload_.sms_fetch_request_);
        }
        break;
      }
      case kRemoteCopyMessage: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.remote_copy_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.remote_copy_message_);
        } else {
          _this->_impl_.payload_.remote_copy_message_->CheckTypeAndMergeFrom(*from._impl_.payload_.remote_copy_message_);
        }
        break;
      }
      case kPeerConnectionOfferMessage: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.peer_connection_offer_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_offer_message_);
        } else {
          _this->_impl_.payload_.peer_connection_offer_message_->CheckTypeAndMergeFrom(*from._impl_.payload_.peer_connection_offer_message_);
        }
        break;
      }
      case kPeerConnectionIceCandidatesMessage: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.peer_connection_ice_candidates_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_ice_candidates_message_);
        } else {
          _this->_impl_.payload_.peer_connection_ice_candidates_message_->CheckTypeAndMergeFrom(*from._impl_.payload_.peer_connection_ice_candidates_message_);
        }
        break;
      }
      case kDiscoveryRequest: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.discovery_request_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.discovery_request_);
        } else {
          _this->_impl_.payload_.discovery_request_->CheckTypeAndMergeFrom(*from._impl_.payload_.discovery_request_);
        }
        break;
      }
      case kWebRtcSignalingFrame: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.web_rtc_signaling_frame_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.web_rtc_signaling_frame_);
        } else {
          _this->_impl_.payload_.web_rtc_signaling_frame_->CheckTypeAndMergeFrom(*from._impl_.payload_.web_rtc_signaling_frame_);
        }
        break;
      }
      case kOptimizationGuidePushNotification: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.optimization_guide_push_notification_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.optimization_guide_push_notification_);
        } else {
          _this->_impl_.payload_.optimization_guide_push_notification_->CheckTypeAndMergeFrom(*from._impl_.payload_.optimization_guide_push_notification_);
        }
        break;
      }
      case kOneTimeTokenBackendNotification: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.one_time_token_backend_notification_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.one_time_token_backend_notification_);
        } else {
          _this->_impl_.payload_.one_time_token_backend_notification_->CheckTypeAndMergeFrom(*from._impl_.payload_.one_time_token_backend_notification_);
        }
        break;
      }
      case kGlicExperimentalTriggering: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.glic_experimental_triggering_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.glic_experimental_triggering_);
        } else {
          _this->_impl_.payload_.glic_experimental_triggering_->CheckTypeAndMergeFrom(*from._impl_.payload_.glic_experimental_triggering_);
        }
        break;
      }
      case PAYLOAD_NOT_SET:
        break;
    }
  }
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[1]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[1];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_ack_channel_configuration();
      }
      _this->_impl_._oneof_case_[1] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kFcmChannelConfiguration: {
        if (oneof_needs_init) {
          _this->_impl_.ack_channel_configuration_.fcm_channel_configuration_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.ack_channel_configuration_.fcm_channel_configuration_);
        } else {
          _this->_impl_.ack_channel_configuration_.fcm_channel_configuration_->MergeFrom(*from._impl_.ack_channel_configuration_.fcm_channel_configuration_);
        }
        break;
      }
      case kServerChannelConfiguration: {
        if (oneof_needs_init) {
          _this->_impl_.ack_channel_configuration_.server_channel_configuration_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.ack_channel_configuration_.server_channel_configuration_);
        } else {
          _this->_impl_.ack_channel_configuration_.server_channel_configuration_->MergeFrom(*from._impl_.ack_channel_configuration_.server_channel_configuration_);
        }
        break;
      }
      case ACK_CHANNEL_CONFIGURATION_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void SharingMessage::InternalSwap(SharingMessage* 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_.sender_guid_, &other->_impl_.sender_guid_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.sender_device_name_, &other->_impl_.sender_device_name_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.message_id_, &other->_impl_.message_id_, arena);
  swap(_impl_.payload_, other->_impl_.payload_);
  swap(_impl_.ack_channel_configuration_, other->_impl_.ack_channel_configuration_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
  swap(_impl_._oneof_case_[1], other->_impl_._oneof_case_[1]);
}

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

PingMessage::PingMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, PingMessage_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:components_sharing_message.PingMessage)
}
PingMessage::PingMessage(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PingMessage& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, PingMessage_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 PingMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void PingMessage::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
PingMessage::~PingMessage() {
  // @@protoc_insertion_point(destructor:components_sharing_message.PingMessage)
  SharedDtor(*this);
}
inline void PingMessage::SharedDtor(MessageLite& self) {
  PingMessage& this_ = static_cast<PingMessage&>(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 PingMessage_class_data_ =
    PingMessage::InternalGenerateClassData_(PingMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PingMessage::GetClassData() const {
  return PingMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
PingMessage::GetClassData() const {
  return PingMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const PingMessage::ParseTableT_
    PingMessage::_table_ =
        PingMessage::InternalGenerateParseTable_(PingMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void PingMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.PingMessage)
  ::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 PingMessage::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const PingMessage& this_ = static_cast<const PingMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL PingMessage::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const PingMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:components_sharing_message.PingMessage)
  ::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:components_sharing_message.PingMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t PingMessage::ByteSizeLong(const MessageLite& base) {
  const PingMessage& this_ = static_cast<const PingMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t PingMessage::ByteSizeLong() const {
  const PingMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.PingMessage)
  ::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 PingMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<PingMessage*>(&to_msg);
  auto& from = static_cast<const PingMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.PingMessage)
  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 PingMessage::CopyFrom(const PingMessage& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:components_sharing_message.PingMessage)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


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

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  AckMessage* 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_.response_message_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.response_message_)
                : nullptr;

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite AckMessage_class_data_ =
    AckMessage::InternalGenerateClassData_(AckMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
AckMessage::GetClassData() const {
  return AckMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
AckMessage::GetClassData() const {
  return AckMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const AckMessage::ParseTableT_
    AckMessage::_table_ =
        AckMessage::InternalGenerateParseTable_(AckMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void AckMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.AckMessage)
  ::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_.original_message_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.response_message_ != nullptr);
      _impl_.response_message_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string original_message_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_original_message_id().empty()) {
      const ::std::string& _s = this_._internal_original_message_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.AckMessage.original_message_id");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // .components_sharing_message.ResponseMessage response_message = 3;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        3, *this_._impl_.response_message_, this_._impl_.response_message_->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:components_sharing_message.AckMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t AckMessage::ByteSizeLong(const MessageLite& base) {
  const AckMessage& this_ = static_cast<const AckMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t AckMessage::ByteSizeLong() const {
  const AckMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.AckMessage)
  ::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)) {
    // string original_message_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_original_message_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_original_message_id());
      }
    }
    // .components_sharing_message.ResponseMessage response_message = 3;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.response_message_);
    }
  }
  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 AckMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<AckMessage*>(&to_msg);
  auto& from = static_cast<const AckMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.AckMessage)
  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)) {
      if (!from._internal_original_message_id().empty()) {
        _this->_internal_set_original_message_id(from._internal_original_message_id());
      } else {
        if (_this->_impl_.original_message_id_.IsDefault()) {
          _this->_internal_set_original_message_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.response_message_ != nullptr);
      if (_this->_impl_.response_message_ == nullptr) {
        _this->_impl_.response_message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.response_message_);
      } else {
        _this->_impl_.response_message_->MergeFrom(*from._impl_.response_message_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void AckMessage::InternalSwap(AckMessage* 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_.original_message_id_, &other->_impl_.original_message_id_, arena);
  swap(_impl_.response_message_, other->_impl_.response_message_);
}

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

void ResponseMessage::set_allocated_sms_fetch_response(::components_sharing_message::SmsFetchResponse* PROTOBUF_NULLABLE sms_fetch_response) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (sms_fetch_response) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(sms_fetch_response)->GetArena();
    if (message_arena != submessage_arena) {
      sms_fetch_response = ::google::protobuf::internal::GetOwnedMessage(message_arena, sms_fetch_response, submessage_arena);
    }
    set_has_sms_fetch_response();
    _impl_.payload_.sms_fetch_response_ = sms_fetch_response;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.ResponseMessage.sms_fetch_response)
}
void ResponseMessage::clear_sms_fetch_response() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kSmsFetchResponse) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.sms_fetch_response_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.sms_fetch_response_ != nullptr) {
        _impl_.payload_.sms_fetch_response_->Clear();
      }
    }
    clear_has_payload();
  }
}
void ResponseMessage::set_allocated_peer_connection_answer_message_response(::components_sharing_message::PeerConnectionAnswerMessage* PROTOBUF_NULLABLE peer_connection_answer_message_response) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (peer_connection_answer_message_response) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(peer_connection_answer_message_response)->GetArena();
    if (message_arena != submessage_arena) {
      peer_connection_answer_message_response = ::google::protobuf::internal::GetOwnedMessage(message_arena, peer_connection_answer_message_response, submessage_arena);
    }
    set_has_peer_connection_answer_message_response();
    _impl_.payload_.peer_connection_answer_message_response_ = peer_connection_answer_message_response;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.ResponseMessage.peer_connection_answer_message_response)
}
void ResponseMessage::clear_peer_connection_answer_message_response() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kPeerConnectionAnswerMessageResponse) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.peer_connection_answer_message_response_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.peer_connection_answer_message_response_ != nullptr) {
        _impl_.payload_.peer_connection_answer_message_response_->Clear();
      }
    }
    clear_has_payload();
  }
}
void ResponseMessage::set_allocated_discovery_response(::components_sharing_message::DiscoveryResponse* PROTOBUF_NULLABLE discovery_response) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (discovery_response) {
    ::google::protobuf::Arena* submessage_arena = discovery_response->GetArena();
    if (message_arena != submessage_arena) {
      discovery_response = ::google::protobuf::internal::GetOwnedMessage(message_arena, discovery_response, submessage_arena);
    }
    set_has_discovery_response();
    _impl_.payload_.discovery_response_ = discovery_response;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.ResponseMessage.discovery_response)
}
void ResponseMessage::set_allocated_glic_experimental_triggering(::components_sharing_message::GlicExperimentalTriggering* PROTOBUF_NULLABLE glic_experimental_triggering) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_payload();
  if (glic_experimental_triggering) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(glic_experimental_triggering)->GetArena();
    if (message_arena != submessage_arena) {
      glic_experimental_triggering = ::google::protobuf::internal::GetOwnedMessage(message_arena, glic_experimental_triggering, submessage_arena);
    }
    set_has_glic_experimental_triggering();
    _impl_.payload_.glic_experimental_triggering_ = glic_experimental_triggering;
  }
  // @@protoc_insertion_point(field_set_allocated:components_sharing_message.ResponseMessage.glic_experimental_triggering)
}
void ResponseMessage::clear_glic_experimental_triggering() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (payload_case() == kGlicExperimentalTriggering) {
    if (GetArena() == nullptr) {
      delete _impl_.payload_.glic_experimental_triggering_;
    } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
      if (_impl_.payload_.glic_experimental_triggering_ != nullptr) {
        _impl_.payload_.glic_experimental_triggering_->Clear();
      }
    }
    clear_has_payload();
  }
}
ResponseMessage::ResponseMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, ResponseMessage_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:components_sharing_message.ResponseMessage)
}
PROTOBUF_NDEBUG_INLINE ResponseMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::components_sharing_message::ResponseMessage& from_msg)
      : payload_{},
        _cached_size_{0},
        _oneof_case_{from._oneof_case_[0]} {}

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ResponseMessage* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  switch (payload_case()) {
    case PAYLOAD_NOT_SET:
      break;
      case kSmsFetchResponse:
        _impl_.payload_.sms_fetch_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.sms_fetch_response_);
        break;
      case kPeerConnectionAnswerMessageResponse:
        _impl_.payload_.peer_connection_answer_message_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_answer_message_response_);
        break;
      case kDiscoveryResponse:
        _impl_.payload_.discovery_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.discovery_response_);
        break;
      case kGlicExperimentalTriggering:
        _impl_.payload_.glic_experimental_triggering_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.glic_experimental_triggering_);
        break;
  }

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

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

void ResponseMessage::clear_payload() {
// @@protoc_insertion_point(one_of_clear_start:components_sharing_message.ResponseMessage)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (payload_case()) {
    case kSmsFetchResponse: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.sms_fetch_response_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.sms_fetch_response_ != nullptr) {
          _impl_.payload_.sms_fetch_response_->Clear();
        }
      }
      break;
    }
    case kPeerConnectionAnswerMessageResponse: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.peer_connection_answer_message_response_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.peer_connection_answer_message_response_ != nullptr) {
          _impl_.payload_.peer_connection_answer_message_response_->Clear();
        }
      }
      break;
    }
    case kDiscoveryResponse: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.discovery_response_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.discovery_response_ != nullptr) {
          _impl_.payload_.discovery_response_->Clear();
        }
      }
      break;
    }
    case kGlicExperimentalTriggering: {
      if (GetArena() == nullptr) {
        delete _impl_.payload_.glic_experimental_triggering_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.payload_.glic_experimental_triggering_ != nullptr) {
          _impl_.payload_.glic_experimental_triggering_->Clear();
        }
      }
      break;
    }
    case PAYLOAD_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = PAYLOAD_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ResponseMessage_class_data_ =
    ResponseMessage::InternalGenerateClassData_(ResponseMessage_globals_._default);

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

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

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

  switch (this_.payload_case()) {
    case kSmsFetchResponse: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          1, *this_._impl_.payload_.sms_fetch_response_, this_._impl_.payload_.sms_fetch_response_->GetCachedSize(), target,
          stream);
      break;
    }
    case kPeerConnectionAnswerMessageResponse: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          2, *this_._impl_.payload_.peer_connection_answer_message_response_, this_._impl_.payload_.peer_connection_answer_message_response_->GetCachedSize(), target,
          stream);
      break;
    }
    case kDiscoveryResponse: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          3, *this_._impl_.payload_.discovery_response_, this_._impl_.payload_.discovery_response_->GetCachedSize(), target,
          stream);
      break;
    }
    case kGlicExperimentalTriggering: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          4, *this_._impl_.payload_.glic_experimental_triggering_, this_._impl_.payload_.glic_experimental_triggering_->GetCachedSize(), target,
          stream);
      break;
    }
    default:
      break;
  }
  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:components_sharing_message.ResponseMessage)
  return target;
}

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

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

  switch (this_.payload_case()) {
    // .components_sharing_message.SmsFetchResponse sms_fetch_response = 1;
    case kSmsFetchResponse: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.sms_fetch_response_);
      break;
    }
    // .components_sharing_message.PeerConnectionAnswerMessage peer_connection_answer_message_response = 2;
    case kPeerConnectionAnswerMessageResponse: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.peer_connection_answer_message_response_);
      break;
    }
    // .components_sharing_message.DiscoveryResponse discovery_response = 3;
    case kDiscoveryResponse: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.discovery_response_);
      break;
    }
    // .components_sharing_message.GlicExperimentalTriggering glic_experimental_triggering = 4;
    case kGlicExperimentalTriggering: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.payload_.glic_experimental_triggering_);
      break;
    }
    case PAYLOAD_NOT_SET: {
      break;
    }
  }
  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 ResponseMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ResponseMessage*>(&to_msg);
  auto& from = static_cast<const ResponseMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.ResponseMessage)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_payload();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kSmsFetchResponse: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.sms_fetch_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.sms_fetch_response_);
        } else {
          _this->_impl_.payload_.sms_fetch_response_->CheckTypeAndMergeFrom(*from._impl_.payload_.sms_fetch_response_);
        }
        break;
      }
      case kPeerConnectionAnswerMessageResponse: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.peer_connection_answer_message_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.peer_connection_answer_message_response_);
        } else {
          _this->_impl_.payload_.peer_connection_answer_message_response_->CheckTypeAndMergeFrom(*from._impl_.payload_.peer_connection_answer_message_response_);
        }
        break;
      }
      case kDiscoveryResponse: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.discovery_response_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.discovery_response_);
        } else {
          _this->_impl_.payload_.discovery_response_->CheckTypeAndMergeFrom(*from._impl_.payload_.discovery_response_);
        }
        break;
      }
      case kGlicExperimentalTriggering: {
        if (oneof_needs_init) {
          _this->_impl_.payload_.glic_experimental_triggering_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.payload_.glic_experimental_triggering_);
        } else {
          _this->_impl_.payload_.glic_experimental_triggering_->CheckTypeAndMergeFrom(*from._impl_.payload_.glic_experimental_triggering_);
        }
        break;
      }
      case PAYLOAD_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


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

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  FCMChannelConfiguration* 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:components_sharing_message.FCMChannelConfiguration)
}
PROTOBUF_NDEBUG_INLINE FCMChannelConfiguration::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        sender_id_fcm_token_(arena),
        sender_id_p256dh_(arena),
        sender_id_auth_secret_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite FCMChannelConfiguration_class_data_ =
    FCMChannelConfiguration::InternalGenerateClassData_(FCMChannelConfiguration_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
FCMChannelConfiguration::GetClassData() const {
  return FCMChannelConfiguration_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
FCMChannelConfiguration::GetClassData() const {
  return FCMChannelConfiguration_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const FCMChannelConfiguration::ParseTableT_
    FCMChannelConfiguration::_table_ =
        FCMChannelConfiguration::InternalGenerateParseTable_(FCMChannelConfiguration_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void FCMChannelConfiguration::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.FCMChannelConfiguration)
  ::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_.sender_id_fcm_token_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.sender_id_p256dh_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.sender_id_auth_secret_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string sender_id_fcm_token = 4;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_sender_id_fcm_token().empty()) {
      const ::std::string& _s = this_._internal_sender_id_fcm_token();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.FCMChannelConfiguration.sender_id_fcm_token");
      target = stream->WriteStringMaybeAliased(4, _s, target);
    }
  }

  // bytes sender_id_p256dh = 5;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_sender_id_p256dh().empty()) {
      const ::std::string& _s = this_._internal_sender_id_p256dh();
      target = stream->WriteBytesMaybeAliased(5, _s, target);
    }
  }

  // bytes sender_id_auth_secret = 6;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_sender_id_auth_secret().empty()) {
      const ::std::string& _s = this_._internal_sender_id_auth_secret();
      target = stream->WriteBytesMaybeAliased(6, _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:components_sharing_message.FCMChannelConfiguration)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t FCMChannelConfiguration::ByteSizeLong(const MessageLite& base) {
  const FCMChannelConfiguration& this_ = static_cast<const FCMChannelConfiguration&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t FCMChannelConfiguration::ByteSizeLong() const {
  const FCMChannelConfiguration& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.FCMChannelConfiguration)
  ::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)) {
    // string sender_id_fcm_token = 4;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_sender_id_fcm_token().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_sender_id_fcm_token());
      }
    }
    // bytes sender_id_p256dh = 5;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_sender_id_p256dh().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_sender_id_p256dh());
      }
    }
    // bytes sender_id_auth_secret = 6;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_sender_id_auth_secret().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_sender_id_auth_secret());
      }
    }
  }
  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 FCMChannelConfiguration::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<FCMChannelConfiguration*>(&to_msg);
  auto& from = static_cast<const FCMChannelConfiguration&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.FCMChannelConfiguration)
  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)) {
      if (!from._internal_sender_id_fcm_token().empty()) {
        _this->_internal_set_sender_id_fcm_token(from._internal_sender_id_fcm_token());
      } else {
        if (_this->_impl_.sender_id_fcm_token_.IsDefault()) {
          _this->_internal_set_sender_id_fcm_token("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_sender_id_p256dh().empty()) {
        _this->_internal_set_sender_id_p256dh(from._internal_sender_id_p256dh());
      } else {
        if (_this->_impl_.sender_id_p256dh_.IsDefault()) {
          _this->_internal_set_sender_id_p256dh("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_sender_id_auth_secret().empty()) {
        _this->_internal_set_sender_id_auth_secret(from._internal_sender_id_auth_secret());
      } else {
        if (_this->_impl_.sender_id_auth_secret_.IsDefault()) {
          _this->_internal_set_sender_id_auth_secret("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void FCMChannelConfiguration::InternalSwap(FCMChannelConfiguration* 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_.sender_id_fcm_token_, &other->_impl_.sender_id_fcm_token_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.sender_id_p256dh_, &other->_impl_.sender_id_p256dh_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.sender_id_auth_secret_, &other->_impl_.sender_id_auth_secret_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  ServerChannelConfiguration* 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:components_sharing_message.ServerChannelConfiguration)
}
PROTOBUF_NDEBUG_INLINE ServerChannelConfiguration::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        configuration_(arena),
        p256dh_(arena),
        auth_secret_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite ServerChannelConfiguration_class_data_ =
    ServerChannelConfiguration::InternalGenerateClassData_(ServerChannelConfiguration_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ServerChannelConfiguration::GetClassData() const {
  return ServerChannelConfiguration_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
ServerChannelConfiguration::GetClassData() const {
  return ServerChannelConfiguration_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ServerChannelConfiguration::ParseTableT_
    ServerChannelConfiguration::_table_ =
        ServerChannelConfiguration::InternalGenerateParseTable_(ServerChannelConfiguration_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void ServerChannelConfiguration::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.ServerChannelConfiguration)
  ::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_.configuration_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.p256dh_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.auth_secret_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // bytes configuration = 3;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_configuration().empty()) {
      const ::std::string& _s = this_._internal_configuration();
      target = stream->WriteBytesMaybeAliased(3, _s, target);
    }
  }

  // bytes p256dh = 4;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_p256dh().empty()) {
      const ::std::string& _s = this_._internal_p256dh();
      target = stream->WriteBytesMaybeAliased(4, _s, target);
    }
  }

  // bytes auth_secret = 5;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_auth_secret().empty()) {
      const ::std::string& _s = this_._internal_auth_secret();
      target = stream->WriteBytesMaybeAliased(5, _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:components_sharing_message.ServerChannelConfiguration)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t ServerChannelConfiguration::ByteSizeLong(const MessageLite& base) {
  const ServerChannelConfiguration& this_ = static_cast<const ServerChannelConfiguration&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t ServerChannelConfiguration::ByteSizeLong() const {
  const ServerChannelConfiguration& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.ServerChannelConfiguration)
  ::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)) {
    // bytes configuration = 3;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_configuration().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_configuration());
      }
    }
    // bytes p256dh = 4;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_p256dh().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_p256dh());
      }
    }
    // bytes auth_secret = 5;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_auth_secret().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_auth_secret());
      }
    }
  }
  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 ServerChannelConfiguration::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<ServerChannelConfiguration*>(&to_msg);
  auto& from = static_cast<const ServerChannelConfiguration&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.ServerChannelConfiguration)
  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)) {
      if (!from._internal_configuration().empty()) {
        _this->_internal_set_configuration(from._internal_configuration());
      } else {
        if (_this->_impl_.configuration_.IsDefault()) {
          _this->_internal_set_configuration("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_p256dh().empty()) {
        _this->_internal_set_p256dh(from._internal_p256dh());
      } else {
        if (_this->_impl_.p256dh_.IsDefault()) {
          _this->_internal_set_p256dh("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_auth_secret().empty()) {
        _this->_internal_set_auth_secret(from._internal_auth_secret());
      } else {
        if (_this->_impl_.auth_secret_.IsDefault()) {
          _this->_internal_set_auth_secret("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void ServerChannelConfiguration::InternalSwap(ServerChannelConfiguration* 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_.configuration_, &other->_impl_.configuration_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.p256dh_, &other->_impl_.p256dh_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.auth_secret_, &other->_impl_.auth_secret_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  DiscoveryRequest* 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:components_sharing_message.DiscoveryRequest)
}
PROTOBUF_NDEBUG_INLINE DiscoveryRequest::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        service_id_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite DiscoveryRequest_class_data_ =
    DiscoveryRequest::InternalGenerateClassData_(DiscoveryRequest_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
DiscoveryRequest::GetClassData() const {
  return DiscoveryRequest_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
DiscoveryRequest::GetClassData() const {
  return DiscoveryRequest_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const DiscoveryRequest::ParseTableT_
    DiscoveryRequest::_table_ =
        DiscoveryRequest::InternalGenerateParseTable_(DiscoveryRequest_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void DiscoveryRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.DiscoveryRequest)
  ::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_.service_id_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string service_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_service_id().empty()) {
      const ::std::string& _s = this_._internal_service_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.DiscoveryRequest.service_id");
      target = stream->WriteStringMaybeAliased(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:components_sharing_message.DiscoveryRequest)
  return target;
}

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

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

   {
    // string service_id = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_service_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_service_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 DiscoveryRequest::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<DiscoveryRequest*>(&to_msg);
  auto& from = static_cast<const DiscoveryRequest&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.DiscoveryRequest)
  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)) {
    if (!from._internal_service_id().empty()) {
      _this->_internal_set_service_id(from._internal_service_id());
    } else {
      if (_this->_impl_.service_id_.IsDefault()) {
        _this->_internal_set_service_id("");
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void DiscoveryRequest::InternalSwap(DiscoveryRequest* 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_.service_id_, &other->_impl_.service_id_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  DiscoveryResponse* 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:components_sharing_message.DiscoveryResponse)
}
PROTOBUF_NDEBUG_INLINE DiscoveryResponse::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        service_id_(arena),
        endpoint_id_(arena),
        endpoint_info_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite DiscoveryResponse_class_data_ =
    DiscoveryResponse::InternalGenerateClassData_(DiscoveryResponse_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
DiscoveryResponse::GetClassData() const {
  return DiscoveryResponse_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
DiscoveryResponse::GetClassData() const {
  return DiscoveryResponse_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const DiscoveryResponse::ParseTableT_
    DiscoveryResponse::_table_ =
        DiscoveryResponse::InternalGenerateParseTable_(DiscoveryResponse_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void DiscoveryResponse::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.DiscoveryResponse)
  ::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_.service_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _impl_.endpoint_id_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _impl_.endpoint_info_.ClearNonDefaultToEmpty();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string service_id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_service_id().empty()) {
      const ::std::string& _s = this_._internal_service_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.DiscoveryResponse.service_id");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // string endpoint_id = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    if (!this_._internal_endpoint_id().empty()) {
      const ::std::string& _s = this_._internal_endpoint_id();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.DiscoveryResponse.endpoint_id");
      target = stream->WriteStringMaybeAliased(2, _s, target);
    }
  }

  // bytes endpoint_info = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    if (!this_._internal_endpoint_info().empty()) {
      const ::std::string& _s = this_._internal_endpoint_info();
      target = stream->WriteBytesMaybeAliased(3, _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:components_sharing_message.DiscoveryResponse)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t DiscoveryResponse::ByteSizeLong(const MessageLite& base) {
  const DiscoveryResponse& this_ = static_cast<const DiscoveryResponse&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t DiscoveryResponse::ByteSizeLong() const {
  const DiscoveryResponse& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.DiscoveryResponse)
  ::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)) {
    // string service_id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_service_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_service_id());
      }
    }
    // string endpoint_id = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!this_._internal_endpoint_id().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_endpoint_id());
      }
    }
    // bytes endpoint_info = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!this_._internal_endpoint_info().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_endpoint_info());
      }
    }
  }
  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 DiscoveryResponse::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<DiscoveryResponse*>(&to_msg);
  auto& from = static_cast<const DiscoveryResponse&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.DiscoveryResponse)
  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)) {
      if (!from._internal_service_id().empty()) {
        _this->_internal_set_service_id(from._internal_service_id());
      } else {
        if (_this->_impl_.service_id_.IsDefault()) {
          _this->_internal_set_service_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      if (!from._internal_endpoint_id().empty()) {
        _this->_internal_set_endpoint_id(from._internal_endpoint_id());
      } else {
        if (_this->_impl_.endpoint_id_.IsDefault()) {
          _this->_internal_set_endpoint_id("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      if (!from._internal_endpoint_info().empty()) {
        _this->_internal_set_endpoint_info(from._internal_endpoint_info());
      } else {
        if (_this->_impl_.endpoint_info_.IsDefault()) {
          _this->_internal_set_endpoint_info("");
        }
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void DiscoveryResponse::InternalSwap(DiscoveryResponse* 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_.service_id_, &other->_impl_.service_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.endpoint_id_, &other->_impl_.endpoint_id_, arena);
  ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.endpoint_info_, &other->_impl_.endpoint_info_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  WebRtcSignalingMessage* 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:components_sharing_message.WebRtcSignalingMessage)
}
PROTOBUF_NDEBUG_INLINE WebRtcSignalingMessage::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        web_rtc_signaling_frame_(arena) {}

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite WebRtcSignalingMessage_class_data_ =
    WebRtcSignalingMessage::InternalGenerateClassData_(WebRtcSignalingMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebRtcSignalingMessage::GetClassData() const {
  return WebRtcSignalingMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebRtcSignalingMessage::GetClassData() const {
  return WebRtcSignalingMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const WebRtcSignalingMessage::ParseTableT_
    WebRtcSignalingMessage::_table_ =
        WebRtcSignalingMessage::InternalGenerateParseTable_(WebRtcSignalingMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void WebRtcSignalingMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.WebRtcSignalingMessage)
  ::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_.web_rtc_signaling_frame_.ClearNonDefaultToEmpty();
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // bytes web_rtc_signaling_frame = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_web_rtc_signaling_frame().empty()) {
      const ::std::string& _s = this_._internal_web_rtc_signaling_frame();
      target = stream->WriteBytesMaybeAliased(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:components_sharing_message.WebRtcSignalingMessage)
  return target;
}

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

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

   {
    // bytes web_rtc_signaling_frame = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_web_rtc_signaling_frame().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                        this_._internal_web_rtc_signaling_frame());
      }
    }
  }
  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 WebRtcSignalingMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<WebRtcSignalingMessage*>(&to_msg);
  auto& from = static_cast<const WebRtcSignalingMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.WebRtcSignalingMessage)
  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)) {
    if (!from._internal_web_rtc_signaling_frame().empty()) {
      _this->_internal_set_web_rtc_signaling_frame(from._internal_web_rtc_signaling_frame());
    } else {
      if (_this->_impl_.web_rtc_signaling_frame_.IsDefault()) {
        _this->_internal_set_web_rtc_signaling_frame("");
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void WebRtcSignalingMessage::InternalSwap(WebRtcSignalingMessage* 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_.web_rtc_signaling_frame_, &other->_impl_.web_rtc_signaling_frame_, arena);
}

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

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

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

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  WebRtcMessage* 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_.message_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.message_)
                : nullptr;

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

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

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite WebRtcMessage_class_data_ =
    WebRtcMessage::InternalGenerateClassData_(WebRtcMessage_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebRtcMessage::GetClassData() const {
  return WebRtcMessage_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
WebRtcMessage::GetClassData() const {
  return WebRtcMessage_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const WebRtcMessage::ParseTableT_
    WebRtcMessage::_table_ =
        WebRtcMessage::InternalGenerateParseTable_(WebRtcMessage_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void WebRtcMessage::Clear() {
// @@protoc_insertion_point(message_clear_start:components_sharing_message.WebRtcMessage)
  ::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_.message_guid_.ClearNonDefaultToEmpty();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.message_ != nullptr);
      _impl_.message_->Clear();
    }
  }
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

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

  cached_has_bits = this_._impl_._has_bits_[0];
  // string message_guid = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    if (!this_._internal_message_guid().empty()) {
      const ::std::string& _s = this_._internal_message_guid();
      ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
          _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "components_sharing_message.WebRtcMessage.message_guid");
      target = stream->WriteStringMaybeAliased(1, _s, target);
    }
  }

  // .components_sharing_message.SharingMessage message = 2;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        2, *this_._impl_.message_, this_._impl_.message_->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:components_sharing_message.WebRtcMessage)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t WebRtcMessage::ByteSizeLong(const MessageLite& base) {
  const WebRtcMessage& this_ = static_cast<const WebRtcMessage&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t WebRtcMessage::ByteSizeLong() const {
  const WebRtcMessage& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:components_sharing_message.WebRtcMessage)
  ::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)) {
    // string message_guid = 1;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      if (!this_._internal_message_guid().empty()) {
        total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
                                        this_._internal_message_guid());
      }
    }
    // .components_sharing_message.SharingMessage message = 2;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.message_);
    }
  }
  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 WebRtcMessage::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<WebRtcMessage*>(&to_msg);
  auto& from = static_cast<const WebRtcMessage&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:components_sharing_message.WebRtcMessage)
  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)) {
      if (!from._internal_message_guid().empty()) {
        _this->_internal_set_message_guid(from._internal_message_guid());
      } else {
        if (_this->_impl_.message_guid_.IsDefault()) {
          _this->_internal_set_message_guid("");
        }
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.message_ != nullptr);
      if (_this->_impl_.message_ == nullptr) {
        _this->_impl_.message_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.message_);
      } else {
        _this->_impl_.message_->MergeFrom(*from._impl_.message_);
      }
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

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


void WebRtcMessage::InternalSwap(WebRtcMessage* 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_guid_, &other->_impl_.message_guid_, arena);
  swap(_impl_.message_, other->_impl_.message_);
}

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